1. 程式人生 > >第四章 第一個程式 知識梳理

第四章 第一個程式 知識梳理

彙編源程式從編寫到除錯

編輯→(xx.asm)→彙編→(xx.obj)→連線→(xx.exe)→執行→除錯


程式4.1

assume cs : codesq

codesq seqment

             mov  ax,0123H

             mov  bx,0456H

             mov  ax,bx

             mov  ax,ax

codesq ends

end


 

1.彙編指令:有對應的機器碼指令,可以被編譯為機器指令,最終為CPU所執行

2.偽指令:沒有對應的機器指令,最終不被CPU所執行,偽指令是由編譯器來執行的指令

常見的偽指令:(程式4.1出現的)

(1).

段名 segment

.....

段名 ends

功能:定義一個段,segment說明一個段的開始,ends說明一個段結束

(2).

end

功能:end是一個彙編程式結束的標記

(3).

assume

功能:assume將有特定用途的段和相關段暫存器關聯起來即可

如本例,在程式的開頭用assume cs:codesg將作為程式碼段的codesg和CPU中的段暫存器cs聯絡起來

3.源程式  程式

將源程式檔案中所有內容稱為源程式

將源程式最終由計算機執行,處理的指令和資料,稱為程式

4.標號

不產生機器碼,由彙編器處理 ( 比如“codesg”)

5.程式返回

mov ax,4c00H

int 21H

這兩條指令的功能就是程式返回

是彙編指令,執行時,由CPU執行

目的 相關指令 指令性質 指令執行者
通知編譯器一個段結束 段名ends 偽指令 編譯時,由編譯器執行
通知編譯器程式結束 end 偽指令 編譯時,由編譯器執行
程式返回 mov ax,4c00h 彙編指令 執行時,由CPU執行

 

 

 

 

 

彙編程式從寫出到執行的過程

編輯(edit)→(xx.asm)→彙編(masm)→(xx.obj)→連線(link)→(xx.exe)→載入(command)→記憶體中的程式→執行(CPU)

exe檔案中程式的載入過程