匯編:Debug的常用命令
Debug是DOS、Windows都提供的實模式(8086方式)程序的調(diào)試工具。使用它,可以查看CPU各種寄存器中的內(nèi)容、內(nèi)存的情況和在機(jī)器碼級跟蹤程序的運(yùn)行。
1、Debug的常用功能
R命令:查看、改變CPU寄存器的內(nèi)容;D命令:查看內(nèi)存中的內(nèi)容;E命令:改寫內(nèi)存中的內(nèi)容:U命令:將內(nèi)存中的機(jī)器指令翻譯成匯編指令:T命令:執(zhí)行一條機(jī)器指令;A命令:以匯編指令的格式在內(nèi)存中寫入一條機(jī)器指令。Q命令:退出debugP命令:類似于step over(“t”命令類似于step into),可用于跳過loop循環(huán)G命令:跳過前面的代碼,停留到指定的代碼位置
2、R命令
輸入r
:查看所有寄存器的值輸入r 寄存器名稱
:修改寄存器的值輸入r ax
:將ax寄存器的值改為0100H
3、D命令
輸入d
:可以查看內(nèi)存中的內(nèi)容輸入d 段地址:偏移地址
:查看特定位置的內(nèi)存數(shù)據(jù)輸入d 段地址:起始偏移地址 結(jié)尾偏移地址
:查看特定位置和特定范圍的內(nèi)存數(shù)據(jù)輸入d 偏移地址
、 d 起始偏移地址 結(jié)尾偏移地址
:會將DS的內(nèi)容作為段地址
右邊是每個內(nèi)存單元中的數(shù)據(jù)對應(yīng)的可顯示的ASCII碼字符,如果沒有對應(yīng)的ASCII字符,就顯示“.”。
4、E命令
1、輸入e 段地址:偏移地址 數(shù)據(jù)串
修改特定位置的內(nèi)存數(shù)據(jù):
2、輸入e 段地址:偏移地址
后按Enter也可以修改特定位置的內(nèi)存數(shù)據(jù),數(shù)據(jù)之間用空格隔開:
5、U命令
輸入u
、u 段地址:偏移地址
可以將內(nèi)存中的內(nèi)容翻譯為對應(yīng)的匯編指令:
由3部分組成
1、最左邊一列:是指令的地址
段地址:偏移地址
2、中間那一列:是指令對應(yīng)的機(jī)器指令3、最右邊一列:是匯編指令
6、A命令
輸入a
、a 段地址:偏移地址在這里插入代碼片
可以從某位置開始寫入?yún)R編指令:
應(yīng)用拓展:
(2)用目前所學(xué)過的匯編指令,計算2的4次方(最多使用4條指令)
(3)查看內(nèi)存中的內(nèi)容。PC機(jī)主板上的ROM中寫有一個生產(chǎn)日期,在內(nèi)存FFFOOH~FFFFFH的某幾個單元中,請找到這個生產(chǎn)日期并試圖改變它。
(4)向內(nèi)存從 B8100H 開始的單元中填寫數(shù)據(jù),如:
-e B810:0000 01 01 02 02 03 03 04 04
請讀者先填寫不同的數(shù)據(jù),觀察產(chǎn)生的現(xiàn)象;再改變填寫的地址,觀察產(chǎn)生的現(xiàn)象。
8086 的顯存地址空間是 A0000H~BFFFFH,其中 B8000H~BFFFFH 為 80*25 彩色字符模式顯示緩沖區(qū),當(dāng)向這個地址空間寫入數(shù)據(jù)時,這些數(shù)據(jù)會立即出現(xiàn)在顯示器上
相關(guān)文章
匯編語言XOR指令:對兩個操作數(shù)進(jìn)行邏輯(按位)異或操作(推薦)
匯編語言(assembly language)是一種用于電子計算機(jī)、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。這篇文章主要介紹了匯編語言XOR指令:對兩個操作數(shù)進(jìn)行邏輯(按位)異或操作,需要的朋友可以參考下2020-01-01匯編語言系列之匯編實現(xiàn)各種碼制的轉(zhuǎn)換(思路詳解)
本文列出了十六進(jìn)制轉(zhuǎn)二進(jìn)制、十進(jìn)制、ASCII碼及大小寫字母轉(zhuǎn)換的代碼,對匯編語言系列之實現(xiàn)各種碼制的轉(zhuǎn)換問題感興趣的朋友跟隨小編一起看看吧2021-11-11