從簡單的程序學習匯編(一)加法程序

本教程將會通過一個一個例子來教會大家如何寫匯編程序隐砸,今天就從最簡單的加法程序開始。(本文只為了讓讀者能容易理解并自己寫出程序吏颖,所以語言簡化搔体,并不具有專業(yè)性和權威性,具體解釋請自己參考文獻半醉,同時也多包涵文中出現的學術性錯誤)

首先是本程序要實現的是兩個數x,y相加疚俱,然后把結果,存到z里缩多。
先給出程序 的源碼:

datas segment
      x dw 1234h
      y dw 5678h
      z dw ?
datas ends
codes segment
    assume cs:codes,ds:datas
start:
    mov ax,datas
    mov ds,ax
    mov ax,x
    add ax,y
    mov z,ax
    mov ah,4ch
    int 21h
codes ends
    end start

我們來逐條分析一下這個程序呆奕。
datas segment一開始這一個預算是定義數據段的開始,這個datas是可以自己隨便寫的衬吆,但是為了方便理解我們就用數據的英語梁钾,這個segment是固定格式不能亂改。
在這條代碼后面就開始我們的變量的定義逊抡,變量定義的格式是:

[變量名] [db,dw,dd] 表達式1姆泻,表達式2.....

變量名就類似于C語言的中int x=10;中的x,是編程人員自己定義的冒嫡。第二參數相當于其中的int是定義數據類型的拇勃,db是定義字節(jié),dw是定義字孝凌,dd是定義雙字方咆,這些都是表示這個變量的長度。表達式就是其中的10蟀架,就是傳入參數瓣赂,可以是二進制,八進制辜窑,十進制钩述,十六進制。如果不確定的可以輸入穆碎?。比如這個代碼中的z dw ?就相當于C語言中的int z;最后把所以變量定義完了后职恳,就要用datas ends來結束定義所禀,注意這個datas必須和你定義數據段開頭的段名一致方面。

然后就是定義代碼段了,首先codes segment和上面一樣色徘,codes是可以自己定義的恭金,但后面ends前面的一定要一樣,然后assume cs:codes,ds:datas就是把代碼段和數據段放進段寄存器中,這段代碼的具體意思就是褂策,把codes段放進CS這個寄存器里横腿,吧datas段放進ds寄存器里,assume是固定格式斤寂,不能改變和刪除耿焊。
這條代碼寫完后,就是開始我們正式的指令的書寫遍搞,先寫start:這就表示代碼的開始罗侯。

    mov ds,ax

這個也是固定格式,是為了把數據取出來溪猿,其中datas就是數據段的段名钩杰。接下來的代碼主要用的是mov指令,就是把后面的數據傳輸到前面的指令诊县。在寫完代碼后要寫

    mov ah,4ch
    int 21h

來結束程序讲弄,也是固定格式,不能改變依痊。
結束程序后垂睬,用codes ends來結束代碼段,最后在末尾填上end start一個完整的程序就寫完了抗悍。寫完后就可以編譯和鏈接來生成exe文件驹饺,具體的方法可以參考這篇文章

最后祝大家身體健康缴渊。

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末赏壹,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子衔沼,更是在濱河造成了極大的恐慌蝌借,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件指蚁,死亡現場離奇詭異菩佑,居然都是意外死亡,警方通過查閱死者的電腦和手機凝化,發(fā)現死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門稍坯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事瞧哟』烨桑” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵勤揩,是天一觀的道長咧党。 經常有香客問我,道長陨亡,這世上最難降的妖魔是什么傍衡? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮负蠕,結果婚禮上蛙埂,老公的妹妹穿的比我還像新娘。我一直安慰自己虐急,他們只是感情好箱残,可當我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著止吁,像睡著了一般被辑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上敬惦,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天盼理,我揣著相機與錄音,去河邊找鬼俄删。 笑死宏怔,一個胖子當著我的面吹牛,可吹牛的內容都是我干的畴椰。 我是一名探鬼主播臊诊,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼斜脂!你這毒婦竟也來了抓艳?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤帚戳,失蹤者是張志新(化名)和其女友劉穎玷或,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體片任,經...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡偏友,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了对供。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片位他。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出棱诱,到底是詐尸還是另有隱情泼橘,我是刑警寧澤涝动,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布迈勋,位于F島的核電站,受9級特大地震影響醋粟,放射性物質發(fā)生泄漏靡菇。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一米愿、第九天 我趴在偏房一處隱蔽的房頂上張望厦凤。 院中可真熱鬧,春花似錦育苟、人聲如沸较鼓。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽博烂。三九已至,卻和暖如春漱竖,著一層夾襖步出監(jiān)牢的瞬間禽篱,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工馍惹, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留躺率,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓万矾,卻偏偏與公主長得像悼吱,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子良狈,可洞房花燭夜當晚...
    茶點故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內容