

下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、DEBUG程序的使用一、在DOS的提示符下,可如下鍵入Debug啟動調(diào)試程序:DEBUG 路徑文件名 參數(shù)1 參數(shù)2Debug后可以不帶文件名,僅運行Debug程序;需要時,再用N和L命令調(diào)入被調(diào)試程序。命令中可以帶有被調(diào)試程序的文件名,則運行Debug的同時,還將指定的程序調(diào)入主存;參數(shù)1/2是被調(diào)試程序所需要的參數(shù)。在Debug程序調(diào)入后,根據(jù)有無被調(diào)試程序及其類型相應(yīng)設(shè)置寄存器組的內(nèi)容,發(fā)出Debug的提示符“”,此時就可用Debug命令來調(diào)試程序。· 運行Debug程序時,如果不帶被調(diào)試程序,則所有段寄存器值相等,都指向當(dāng)前可用的主存
2、段;除SP之外的通用寄存器都設(shè)置為0,而SP指示當(dāng)前堆棧頂在這個段的尾部;IP=0100h;狀態(tài)標(biāo)志都是清0狀態(tài)。 · 運行Debug程序時,如果帶入的被調(diào)試程序擴(kuò)展名不是.EXE,則BX.CX包含被調(diào)試文件大小的字節(jié)數(shù)(BX為高16位),其他同不帶被調(diào)試程序的情況。 · 運行Debug程序時,如果帶入的被調(diào)試程序擴(kuò)展名是.EXE,則需要重新定位。此時,CS : IP和SS : SP根據(jù)被調(diào)試程序確定,分別指向代碼段和堆棧段。DS=ES指向當(dāng)前可用的主存段,BX.CX包含被調(diào)試文件大小的字節(jié)數(shù)(BX為高16位),其他通用寄存器為0,狀
3、態(tài)標(biāo)志都是清0狀態(tài)。二、DEBUG命令的格式Debug的命令都是一個字母,后跟一個或多個參數(shù): 字母 參數(shù)命令的使用中注意: 字母不分大小寫; 只使用16進(jìn)制數(shù),沒有后綴字母; 分隔符(空格或逗號)只在兩個數(shù)值之間是必須的,命令和參數(shù)間可無分隔符; 每個命令只有按了回車鍵后才有效,可以用Ctrl+Break中止命令的執(zhí)行; 命令如果不符合Debug的規(guī)則,則將以“error”提示,并用“”指示錯誤位置。許多命令的參數(shù)是主存邏輯地址,形式是“段基地址 : 偏移地址”。其中,段基地址可以是段寄存器或數(shù)值;偏
4、移地址是數(shù)值。如果不輸入段地址,則采用默認(rèn)值,可以是缺省段寄存器值。如果沒有提供偏移地址,則通常就是當(dāng)前偏移地址。對主存操作的命令還支持地址范圍這種參數(shù),它的形式是:“開始地址 結(jié)束地址”(結(jié)束地址不能具有段地址),或者是:“開始地址 L字節(jié)長度”。三、DEBUG子命令1、顯示命令DD(Dump)命令顯示主存單元的內(nèi)容,它的格式如下(注意分號后的部分用于解釋命令功能,不是命令本身): D 地址 ;顯
5、示當(dāng)前或指定開始地址的主存內(nèi)容 D 范圍 ;顯示指定范圍的主存內(nèi)容例如,顯示當(dāng)前(接著上一個D命令顯示的最后一個地址)主存內(nèi)容: 左邊部分是主存邏輯地址,中間是連續(xù)16個字節(jié)的主存內(nèi)容(16進(jìn)制數(shù),以字節(jié)為單位),右邊部分是這16個字節(jié)內(nèi)容的ASCII字符顯示,不可顯示字符用點“.”表示。一個D命令僅顯示“8行×16個字節(jié)”(80列顯示模式)內(nèi)容。再如:
6、0; -d 100 ;顯示數(shù)據(jù)段100h開始的主存單元 -d cs:0 ;顯示代碼段
7、的主存內(nèi)容 -d 2f0 L 20 ;顯示ds:2f0h開始的20h個主存數(shù)據(jù)2、修改命令EE(Enter)命令用于修改主存內(nèi)容,它有兩種格式: E 地址 ;格式1,修改指定
8、地址的內(nèi)容 E 地址 數(shù)據(jù)表 ;格式2,用數(shù)據(jù)表的數(shù)據(jù)修改指定地址的內(nèi)容格式1是逐個單元相繼修改的方法。例如,鍵入“e ds:100”,Debug顯示原來內(nèi)容,用戶可以直接輸入新數(shù)據(jù),然后按空格鍵顯示下一個單元的內(nèi)容,或者按“”鍵顯示上一個單元的內(nèi)容;不需要修改可以直接按空格或“”鍵;這樣,用戶可以不斷修改相繼單元的內(nèi)容,直到用回車鍵結(jié)束該命令為止。 格式2可以一次修改多個單元,例如: -e ds:100
9、;F3XYZ8D ;用F3/X/Y/Z/8D這5個數(shù)據(jù)替代DS:0100 0104的原來內(nèi)容3、填充命令FF(Fill)命令用于對一個主存區(qū)域填寫內(nèi)容,同時改寫原來的內(nèi)容,其格式為: F 范圍 數(shù)據(jù)表該命令用數(shù)據(jù)表的數(shù)據(jù)寫入指定范圍的主存。如果數(shù)據(jù)個數(shù)超過指定的范圍,則忽略多出的項;如果數(shù)據(jù)個數(shù)小于指定的范圍,則重復(fù)使用這些數(shù)據(jù),直到填滿指定范圍。4、寄存器命令RR(Register)命令用于顯示和修改處理器的寄存器,它有三種格式。
10、160; R ;格式1,顯示所有寄存器內(nèi)容和標(biāo)志位狀態(tài)例如,當(dāng)我們剛進(jìn)入Debug時,就可以執(zhí)行該命令,顯示示例如下:其中,前兩行給出所有寄存器的值,包括各個標(biāo)志狀態(tài)。最后一行給出了當(dāng)前CS : IP處的指令;由于這是一個涉及數(shù)據(jù)的指令,這一行的最后還給出相應(yīng)單元的內(nèi)容。 R 寄存器名 ;格式2,顯示和修改指定寄存器例如,鍵入“r ax”,Debug給出當(dāng)前AX內(nèi)容,冒號后用于輸入新數(shù)據(jù),如不修改則按Enter鍵。
11、60; RF ;格式3,顯示和修改標(biāo)志位Debug將顯示當(dāng)前各個標(biāo)志位的狀態(tài)。顯示的符號及其狀態(tài)如表F1.1所示,用戶只要輸入這些符號就可以修改對應(yīng)的標(biāo)志狀態(tài),鍵入的順序可以任意。5、匯編命令A(yù)匯編命令A(yù)(Assemble)用于將輸入的匯編指令匯編成為機(jī)器代碼保存于主存。 A 地址 ;從指定地址開始匯編指令A(yù)命令中如果沒有指定地址,則接著上一個A命令的最后一個單元開始;若還沒有使用過A命令,則從當(dāng)前CS : IP開始。輸入A命令后,就可以輸入8086
12、指令,Debug將它們匯編成機(jī)器代碼,相繼地存放在指定地址開始的存儲區(qū)中,記住最后要輸入一個回車結(jié)束A命令。進(jìn)行匯編的步驟如下: 輸入?yún)R編命令A(yù) 地址,按回車。Debug提示地址,等待你輸入新指令; 輸入?yún)R編指令,按回車; 如上繼續(xù)輸入?yún)R編指令,直到輸入所有指令; 不輸入內(nèi)容就按回車,結(jié)束匯編,返回Debug的提示符狀態(tài)。A命令支持標(biāo)準(zhǔn)的8086(和8087浮點)指令系統(tǒng)以及匯編語言語句格式,但要注意以下一些規(guī)則: 所有輸入的數(shù)值都是16進(jìn)制數(shù); 段超越指令需要在相應(yīng)指令前,單獨一行輸入; 段間(遠(yuǎn))返回
13、的助記符要使用RETF; A命令也支持最常用的兩個偽指令DB和DW。6、反匯編命令U反匯編命令U(Unassemble)將主存內(nèi)容按照機(jī)器代碼形成匯編指令顯示: U 地址 ;從指定地址開始,反匯編32個字節(jié)(80列顯示模式) U 范圍 ;對指定范圍的主存內(nèi)容進(jìn)行反匯編U命令中如果沒有指定地址,則接著上一個U命令的最后一個單元開始;若還沒有使用過U命令,則從當(dāng)前CS :
14、160;IP開始。屏幕顯示的左邊是主存邏輯地址,中間是該指令的機(jī)器代碼,而右邊則是對應(yīng)的指令匯編格式。7、運行命令G運行命令G(Go)從指定地址處開始運行程序,直到遇到斷點或者程序正常結(jié)束。 G =地址 斷點地址1,斷點地址2,.,斷點地址10G命令等號后的地址指定程序段運行的起始地址,如不指定則從當(dāng)前的CS : IP開始運行。斷點地址如果只有偏移地址,則默認(rèn)是代碼段CS;斷點可以沒有,但最多只能有10個。程序遇到斷點(實際上就是斷點中斷指令I(lǐng)NT 3),停止執(zhí)行,并顯示當(dāng)前所有寄存器和標(biāo)志位的內(nèi)
15、容、以及下一條將要執(zhí)行的指令(顯示內(nèi)容同R命令),以便觀察程序運行到此的情況。程序正常結(jié)束,將顯示“Program terminated normally”。注意,G命令以及后面的T和P命令要指向正確的指令代碼,否則會出現(xiàn)不可預(yù)測的結(jié)果,例如“死機(jī)”。8、跟蹤命令T跟蹤命令T(Trace),也稱為單步命令,每執(zhí)行一條指令就顯示運行結(jié)果,使程序員可以細(xì)致地觀察程序的執(zhí)行情況。 T =地址 ;逐條指令跟蹤 &
16、#160; T =地址 數(shù)值 ;多條指令跟蹤從指定地址起執(zhí)行一條或數(shù)值參數(shù)指定條數(shù)的指令后停下來,每條指令執(zhí)行后都要顯示所有寄存器和標(biāo)志位的值以及下一條指令。如未指定地址則從當(dāng)前的CS : IP開始執(zhí)行。注意給出的執(zhí)行地址前有一個等號,否則會被認(rèn)為是被跟蹤指令的條數(shù)(數(shù)值)。T命令逐條指令執(zhí)行程序,遇到子程序(CALL)或中斷調(diào)用(INT n)指令也不例外,也會進(jìn)入到子程序或中斷服務(wù)程序當(dāng)中執(zhí)行。9、繼續(xù)命令P繼續(xù)命令P(Proceed)類似T命令,逐條執(zhí)行指令、顯示結(jié)果。但是
17、當(dāng)遇到子程序調(diào)用、中斷功能調(diào)用和循環(huán)指令等時,不在子程序、中斷服務(wù)程序或循環(huán)體中單步執(zhí)行,而是直接執(zhí)行完成子程序、中斷服務(wù)程序或循環(huán)體,然后顯示結(jié)果。當(dāng)不需要調(diào)試子程序、中斷服務(wù)程序或循環(huán)程序段時,要應(yīng)用P命令,而不是T命令。 P =地址 數(shù)值10、退出命令Q退出命令Q(Quit)使Debug程序退出,返回DOS。Q命令并無存盤功能,可使用W命令存盤。11、命名命令N命名命令N(Name)把一個或兩個可以包含路徑的文件全名存入Debug中,以便在其后用L或W命令把文件裝入或存盤。
18、N 文件名1,文件名212、裝入命令L裝入命令L(Load)將磁盤中的文件或扇區(qū)內(nèi)容裝載到主存中。 L 地址 ;格式1:裝入由N命令指定的文件 格式1的L命令裝載一個文件到給定的主存地址處。 L 地址 驅(qū)動器 扇區(qū)號 扇區(qū)數(shù) ;格式2:裝
19、入指定磁盤扇區(qū)范圍的內(nèi)容格式2的L命令裝載磁盤的若干扇區(qū)(最多80h)到給定的主存地址處;缺省段地址是CS。其中,0表示A盤,1表示B盤,2表示C盤,。13、寫盤命令W寫盤命令W(Write)主存內(nèi)容寫入磁盤的文件或扇區(qū)中,與L命令相反。 W 地址 ;格式1:將由N命令指定的文件寫入磁盤格式1的W命令將指定開始地址的數(shù)據(jù)寫入一個文件(這個文件應(yīng)該已經(jīng)用N命令命名);如未指定地址則從CS : 100開始。要寫入文件的字節(jié)數(shù)應(yīng)先放入BX(高字)和CX(低字)中。
20、如果采用這個W命令保存你的可執(zhí)行程序,它的擴(kuò)展名應(yīng)是COM;它不能寫入具有EXE和HEX擴(kuò)展名的文件。 W 地址 驅(qū)動器 扇區(qū)號 扇區(qū)數(shù) ;格式2:把數(shù)據(jù)寫入指定磁盤扇區(qū)范圍格式2的W命令將指定地址的數(shù)據(jù)寫入磁盤的若干扇區(qū)(最多80H);如果沒有給出段地址,則缺省是CS。其他說明同L命令。由于格式2的W命令直接對磁盤寫入,沒有經(jīng)過DOS文件系統(tǒng)管理,所以一定要小心,否則可能無法利用DOS文件系統(tǒng)讀寫14、其它命令 比較命令C(Compare) C 范圍 地址 ;將指定范圍的內(nèi)容與指定地址內(nèi)容比較 16進(jìn)制數(shù)計算命令H(Hex)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 紋眉基礎(chǔ)知識
- 老舊小區(qū)立項方案范本
- 環(huán)保風(fēng)機(jī)防腐施工方案
- 內(nèi)蒙古藝術(shù)學(xué)院《即興伴奏(Ⅱ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 水電防坑改造施工方案
- 重慶師范大學(xué)《納米生物技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 蘇州健雄職業(yè)技術(shù)學(xué)院《化工設(shè)計基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 潞安職業(yè)技術(shù)學(xué)院《巖土工程設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 《基礎(chǔ)數(shù)據(jù)分析與應(yīng)用》課件
- 營口職業(yè)技術(shù)學(xué)院《環(huán)境與可持續(xù)發(fā)展》2023-2024學(xué)年第二學(xué)期期末試卷
- SHANLONG山龍 CA100-X雕刻機(jī)控制系統(tǒng)中文使用手冊 V1.3
- 健身長拳《起勢、開步雙劈、按掌前推》教案
- 高職學(xué)生職業(yè)生涯規(guī)劃-全章課件
- 森林管護(hù)措施及造林工作思考
- 順豐ai面試19道題自我介紹
- 國家開放大學(xué)一網(wǎng)一平臺電大《建筑測量》實驗報告1-5題庫
- 人教版五年級上冊英語課件Unit 5 Part B C 第6課時
- 陜西延長石油靖邊煤業(yè)有限公司海測灘煤礦礦山地質(zhì)環(huán)境保護(hù)與土地復(fù)墾方案
- 淺析新時代教育評價改革機(jī)制及實踐路徑
- 2022-2023學(xué)年山東省煙臺市高一(下)期中英語試卷-普通用卷
- 世界社會主義五百年
評論
0/150
提交評論