彙編摘錄2(例)

2021-10-04 11:40:33 字數 1992 閱讀 1093

匯程式設計序

*例1:單個字元的鍵盤輸入與顯示

code segment //說明語句,**段段名為code

assume cs:code //指定code段與cs暫存器關聯

start: mov ah,1 //dos系統的1號功能是鍵盤鍵入

int 21h //呼叫dos系統功能,即1號功能可以使用,程式等待鍵盤輸入乙個字元》

後才繼續執行,鍵盤輸入的字元以ascii碼形式被儲存在al暫存器裡

mov dl,al //

add dl,1 //dl加一,為2號功能呼叫準備輸出的字元

mov ah,2 //呼叫2號功能,顯示dl中的字元

int 21h //重申請

mov ah,4ch //4ch功能,程式結束並返回作業系統

int 21h

code ends //說明語句,code**段end

end start //說明語句,告訴匯程式設計序,彙編結束於此,程式的啟動位址為標號為stt

art的那條指令

*例2:顯示「wonderful」字串

data segment

string db 『wonderful$』 // 字串需用單引號括起,$為結束標誌

data ends

code segment

assume cs:code,ds:data //code與cs暫存器關聯,data與ds暫存器關聯

start: mov ax,data //data段值傳入ax

mov ds,ax //ax暫存器值傳入ds暫存器

mov dx,offset string //把字串string的起始偏移位址傳入dx暫存器,offset求偏移位址,也可寫做lea dx,data

移位址,沒有offset會求string值

mov ah,9 //呼叫9號功能,顯示字串

int 21h

code ends

end start

edit string.asm 編輯修改

masm string 產生obj二進位制彙編檔案,彙編時同時想得到lst列表檔案時,可以鍵入:masm string string string 該命令執行後若因語法錯誤得不到obj檔案,可用edit檢視lst檔案獲取參考資訊

link string 產生exe可執行檔案,同時可產生map(連線映像檔案,給出每個**段在儲存器中的分配情況)和lib檔案(程式需要用到的庫檔案,對於多個模組檔案組成的程式,可以各模組獨自彙編,然後對多個obj檔案link:link string+str2+str3 主模組為string)

執行以上命令出現人機對話時均可按enter鍵執行預設操作

string.exe檔案生成則可以執行

直接輸入string執行文字

另:csdn列印$等特殊字元需要用\$轉譯,>可用於輸出**

*例3 鍵盤輸入緩衝區程式

data segment

buf db 9//定義緩衝區大小為9個位元組

real db ?//實際輸入的字元個數

str db 9dup(?)//輸入的字元在這裡(含回車)

data ends

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

lea dx,buf//指向緩衝區

mov ah,0ah

int 21h

code ends

end start

*例4 寫檔案或裝置

mov ah,40h

lea dx,str//str為資料區首位址

mov bx,1//檔案代號=1表示標準裝置顯示器

mov cx,9//輸出9個位元組

int 21h

摘錄 彙編檔案字尾 s 與 S

一 大小寫字尾的區別 s 組合語言源程式 彙編 s 組合語言源程式 預處理,彙編 小寫的s檔案,在後期階段不在進行預處理操作,所以我們不能在這裡面寫預處理的語句在裡面 大寫的s檔案,還會進行預處理 彙編等操作,所以我們可以在這裡面加入預處理的命令 二 編譯的相關流程 預處理 pre processi...

彙編學習(十五)X86彙編學習 2 MBR為例

我們從 組合語言 的坑爬出來,又進入到了 實模式到保護模式 的坑中。mbr 計算機開機加電自檢之後,bios 就就嘗試讀取0面0道1扇區的內容,傳統上就是主引導扇區mbr共512b 以0x55 和 0xaa結尾。如下 mov ax,0xb800 指向文字模式的顯示緩衝區 mov es,ax 以下顯示...

每天都要打魚 閱讀摘錄2

2005年3月1日 性格是怎樣決定命運的 一位日本的心理學大師說過一句話 心理變,態度亦變 態度變,行為亦變 行為變,習慣亦變 習慣變,人格亦變 人格變,命運亦變。換句話說,乙個人要想運勢好,他的性格首先要好。你不能總是讓別人跟你在一起不舒服,這樣做人就缺少親和力,所以人在有自知之明之後能夠像古人說...