在debug環(huán)境下建立和匯編程序

在debug環(huán)境下建立和匯編程序

ID:44349122

大?。?6.00 KB

頁數(shù):6頁

時(shí)間:2019-10-21

在debug環(huán)境下建立和匯編程序_第1頁
在debug環(huán)境下建立和匯編程序_第2頁
在debug環(huán)境下建立和匯編程序_第3頁
在debug環(huán)境下建立和匯編程序_第4頁
在debug環(huán)境下建立和匯編程序_第5頁
資源描述:

《在debug環(huán)境下建立和匯編程序》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、在debug環(huán)境下建立和匯編程序一,(1)進(jìn)入debugC:debug回車(2)輸入程序并匯編-A100回車0AF0:0100movdl,38回車0AF0:0102movah,2回車0AF0:0104int21h回車0AF0:0106int20h回車0AF0:0108回車(3)運(yùn)行程序-g=1008Programterminatednormally如果想分析該程序的指令,可使用反匯編命令U(4)反匯編-u100,108回車0AF0:0100B238MOVDL,30AF0:0102B402MOVAH,00AF0:0104CD21INT210AF

2、0:0106CD20INT200AF0:010856PUSHSI(5)將機(jī)器指令程序送到起始地址為200h的單元-e200b2,38,b4,02,cd,21,cd,20,56-g=2008Programterminatednormally?二,常用debug命令介紹(1)顯示,修改寄存器內(nèi)容顯示所冇寄存器內(nèi)容格式:-r回車功能:以十六進(jìn)制形式顯示cpu內(nèi)部個(gè)寄存器的值;以符號形式顯示標(biāo)志寄存器的各標(biāo)志位(除tf外)的值;并將CS:IP所指的內(nèi)存內(nèi)容反匯編成一?條指令,可視為將要執(zhí)行的指令。如:-r回車AX=0000BX=OOOOCX=OOOOD

3、X=OOOOSP=FFEEBP=OOOOSI=0000DI=0000DS=OAFOES=OAFOSS=OAFOCS=OAFOIP=0200NVUPElPLNZNAPONC0AF0:0200B238MOVDL,38矢□:cs=OAFOh,IP=0100h修改寄存器榕式:一r寄存器名回車-rdsDSOAF:OAEO-rds的內(nèi)容由原來的OafOh修改為OaeOh修改標(biāo)志值格式:-rf例:-rfNVUPElPLNZNAPONC-ovng回車將of,sf的值分別修改為1。⑵匯編,反匯編指令匯編命令A(yù)格式:一A內(nèi)存地址回車?yán)赫{(diào)用dos中02h號功能顯示

4、字符'訂,將該程序匯編到1270:100h開始的內(nèi)存中。-A1270:1001270:0100mov,ah,21270:0102mov,dl,611270:0104int211270:0106int201270:0108-反匯編命令U格式:一u內(nèi)存塊回年功能:分三列顯示反匯編的結(jié)果,第一列為指令首地址,第二列為16進(jìn)制形式的指令機(jī)器碼,第三列為指令的助記符。-u1270:1001270:0100B402MOVAH,021270:0102B261MOVDL,611270:0104CD21INT211270:0106CD20INT201270:01

5、080000ADD[BX+SI],AL1270:010A0000ADD[BX+SI],AL1270:010C0000ADD[BX+SI],AL1270:010E0000ADD[BX+SI],AL1270:01100000ADD[BX+SI],AL1270:01120000ADD[BX+SI],AL1270:01140000ADD[BX+SI],AL1270:01160000ADD[BX+SI],AL1270:01180000ADD[BX+SI],AL1270:011A0000ADD[BX+SI],AL1270:011C0000ADD[BX+SI

6、],AL1270:011E0000ADD[BX+SI],AL?(3)執(zhí)行程序1?單步執(zhí)行格式:一t=內(nèi)存地址冋車格式:一p=內(nèi)存地址回車功能:用命令中的內(nèi)存地址的段地址和偏移地址修改CS和ip,然后執(zhí)行由cs:ip指向的內(nèi)存單元處的一條指令,顯示各寄存器的值,并反匯編下一條指令,返回debug狀態(tài)。例:-t=1270:100AX=0200BX=OOOOCX=0000DX=0000SP=FFEEBP=OOOOSI=0000DI=0000DS=OAEOES=OAFOSS=OAFOCS=1270IP=0102OVUPElNGNZNAPONC1270:

7、0102B261MOVDL,61-執(zhí)行結(jié)果:ah=2,cs值不變,ip的值增加2,cs:ip指向第二條指令2.多步執(zhí)行格式:一t=內(nèi)存地址執(zhí)行指令的條數(shù)格式:一p=內(nèi)存地址執(zhí)行指令的條數(shù)命令t和p的不同:one:帶重復(fù)前綴rep/repnz/repz的串操作指令和loop/loopz/loopn等循環(huán)指令是與cs和關(guān)的指令。用t命令執(zhí)行這類指令時(shí),每執(zhí)行一次,ex值減一,就停卜.來返回debug;而p命令執(zhí)行時(shí),一肓執(zhí)行到cx=0,執(zhí)行其后的下一條指令,才返冋debugtwo:調(diào)用指令call及中斷調(diào)用指令int,由于這類指令修改了cs和ip,

8、使程序結(jié)構(gòu)產(chǎn)生轉(zhuǎn)向。用t命令則在cs:ip(子程序)入口處停下來返回debug,nJ"用t命令進(jìn)行跟蹤。而用P命令則顯示call和int的下一條指令如

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時(shí)可能會顯示錯(cuò)亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。