![匯編語(yǔ)言源程序的編輯與調(diào)試過(guò)程_第1頁(yè)](http://file4.renrendoc.com/view10/M03/1E/39/wKhkGWWJWsuAEx_LAAHsE4fL89w463.jpg)
![匯編語(yǔ)言源程序的編輯與調(diào)試過(guò)程_第2頁(yè)](http://file4.renrendoc.com/view10/M03/1E/39/wKhkGWWJWsuAEx_LAAHsE4fL89w4632.jpg)
![匯編語(yǔ)言源程序的編輯與調(diào)試過(guò)程_第3頁(yè)](http://file4.renrendoc.com/view10/M03/1E/39/wKhkGWWJWsuAEx_LAAHsE4fL89w4633.jpg)
![匯編語(yǔ)言源程序的編輯與調(diào)試過(guò)程_第4頁(yè)](http://file4.renrendoc.com/view10/M03/1E/39/wKhkGWWJWsuAEx_LAAHsE4fL89w4634.jpg)
![匯編語(yǔ)言源程序的編輯與調(diào)試過(guò)程_第5頁(yè)](http://file4.renrendoc.com/view10/M03/1E/39/wKhkGWWJWsuAEx_LAAHsE4fL89w4635.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
匯編語(yǔ)言源程序的編輯與調(diào)試過(guò)程1怎樣在TD環(huán)境下載入被調(diào)試稈序?在TD環(huán)境下如何編輯匯編指令?在TD環(huán)境下如何杳看/修改數(shù)據(jù)段的數(shù)據(jù)?4?在TD環(huán)境下如何修改寄存器內(nèi)容?在TD環(huán)境下修改某個(gè)標(biāo)志位內(nèi)容,怎樣操作?指定稈序的起始執(zhí)行地址怎樣操作?在TD環(huán)境下怎樣單步跟蹤稈序的執(zhí)行?8?在TD環(huán)境中,若只執(zhí)行稈序的某一部分指令,怎樣處理?被調(diào)試稈序的顯示輸出看不見(jiàn)怎么辦?10?用MASM編譯時(shí)產(chǎn)牛警告錯(cuò)誤會(huì)影響結(jié)果嗎?在WIN2000和WINDOWSXP環(huán)境中可以使用命令行方式的EDIT編輯器和調(diào)試稈序DEBUG嗎?為什么點(diǎn)擊該稈序時(shí)會(huì)出現(xiàn):IncorrectDOSversion的錯(cuò)誤信息?12?若使用DEBUG調(diào)試運(yùn)行稈序,如何裝入稈序?在匯編語(yǔ)言源稈序中怎樣加入中文注釋?zhuān)坑糜浭卤竟ぞ呔庉嬙炊捫?,主名?23_ABCDEF.ASM,為什么編譯稈序MASM報(bào)告找不到該文件?15?用記事本工具編輯源稈序,取名為123.ASM,為什么編譯稈序MASM報(bào)告找不到該文件?16?已在稈序中設(shè)有如下定義:STACKSEGMENT/DR200DUP(0)/STACKENDS/為什么LINK仍然警告:nostacksegment?使用DERUG調(diào)試稈序,如何設(shè)置斷點(diǎn)?用TD調(diào)試一個(gè)顯示字符串的稈序,當(dāng)單步運(yùn)行至:/MOVAL.09/INT21H/語(yǔ)句后,稈序似乎變得冗長(zhǎng)難耐,是什么原因?怎樣在TD環(huán)境下載入被調(diào)試程序?答:方法1:轉(zhuǎn)到TD.EXE所在目錄,在DOS提示符下鍵入以下命令:C:\ASM>TD/進(jìn)入TD后,按Alt-F鍵打開(kāi)File菜單,選擇Open,在文件對(duì)話框中輸入要調(diào)試的程序名,按回車(chē)。方法2:轉(zhuǎn)到TD.EXE所在目錄,在DOS提示符下鍵入以下命令(假定要調(diào)試的程序名為HELLO.EXE):C:\ASM>TDHELLO.EXE/方法3在Windows操作系統(tǒng)中,打開(kāi)TD.EXE所在目錄,把要調(diào)試的程序圖標(biāo)拖放到TD的圖標(biāo)上。[返回]在TD環(huán)境下如何輸入編輯匯編指令?答(1)用Tab鍵選擇代碼區(qū)為當(dāng)前區(qū)域;(2)用方向鍵把光標(biāo)移到期望的地址處,如果是輸入一個(gè)新的程序段,建議把光標(biāo)移到CS:0100H處;(3)打開(kāi)指令編輯窗口,有兩種方法:一是在光標(biāo)處直接鍵入?yún)R編指令,在輸入?yún)R編指令的同時(shí)屏幕上就會(huì)自動(dòng)彈出指令的臨時(shí)編輯窗口。二是用Alt-F10鍵激活代碼區(qū)局部菜單,選擇其中的匯編命令,屏幕上也會(huì)自動(dòng)彈出指令的臨時(shí)編輯窗口。(4)在臨時(shí)編輯窗口中輸入/編輯指令,每輸入完一條指令,按回車(chē),輸入的指令即可出現(xiàn)在光標(biāo)處(替換掉原來(lái)的指令),同時(shí)光標(biāo)自動(dòng)下移一行,以便輸入下一條指令。[返回]在TD環(huán)境下如何杳看/修改數(shù)據(jù)段的數(shù)據(jù)?答:(1)用Tab鍵選擇數(shù)據(jù)區(qū)為當(dāng)前區(qū)域;(2)使用局部菜單中的“Goto”命令并結(jié)合使用方向鍵把光標(biāo)移到期望的地址單元處(注意數(shù)據(jù)區(qū)的光標(biāo)是一個(gè)下劃線),數(shù)據(jù)區(qū)就從該地址處顯示內(nèi)存單元的內(nèi)容。3)若要修改該地址處的內(nèi)容,則需打開(kāi)數(shù)據(jù)編輯窗口。有兩種方法:一是在光標(biāo)處直接鍵輸入數(shù)據(jù),在輸入數(shù)據(jù)的同時(shí)屏幕上就會(huì)自動(dòng)彈出數(shù)據(jù)編輯窗口。二是用Alt-F10鍵激活數(shù)據(jù)區(qū)局部菜單,選擇其中的“Change”命令,屏幕上也會(huì)彈出數(shù)據(jù)編輯窗口。(4)在數(shù)據(jù)編輯窗口中輸入所需的數(shù)據(jù),輸入完后,按回車(chē),輸入的數(shù)據(jù)就會(huì)替代光標(biāo)處的原始數(shù)據(jù)。「返冋]4.在TD環(huán)境下如何修改寄存器內(nèi)容?答:(1)用Tab鍵選擇寄存器區(qū)為當(dāng)前區(qū)域;用方向鍵把光標(biāo)移到要修改的寄存器上;打開(kāi)編輯輸入窗口。有兩種方法:一是在光標(biāo)處直接鍵入所需的值,在鍵入的同時(shí)屏幕上就會(huì)自動(dòng)彈出編輯輸入窗口。二是用Alt-F10鍵激活寄存器區(qū)局部菜單,選擇其中的“Change”命令,屏幕上也會(huì)彈出編輯輸入窗口。在編輯輸入框中鍵入所需的值,然后冋車(chē),這個(gè)新的值就會(huì)取代原來(lái)該寄存器的內(nèi)容?!阜祪眨?.在TD環(huán)境下修改某個(gè)標(biāo)志位內(nèi)容,怎樣操作?答:(1)用Tab鍵選擇標(biāo)志區(qū)為當(dāng)前區(qū)域;用方向鍵把光標(biāo)移到要修改的標(biāo)志位上;按冋車(chē)鍵或空格鍵即可使標(biāo)志位的值在0、1之間變化?!阜祪眨?.指定程序的起始執(zhí)行地址怎樣操作?答:方法一:用Tab鍵選擇代碼區(qū)為當(dāng)前區(qū)域;用Alt-F10鍵激活代碼區(qū)局部菜單,選擇局部菜單中的“NewCS:IP”命令。方法二:用Tab鍵選擇寄存器區(qū)為當(dāng)前區(qū)域;用方向鍵把光標(biāo)移到CS寄存器上,輸入程序起始地址的段地址。用方向鍵把光標(biāo)移到IP寄存器上,輸入程序起始地址的偏移量?!阜祪眨?. 在TD環(huán)境下怎樣單步跟蹤程序的執(zhí)行?答:(1)用上述第6條中的方法首先指定程序的起始執(zhí)行地址;(2)按F7或F8鍵,每次將只執(zhí)行一條指令。注:若當(dāng)前執(zhí)行的指令是CALL指令,則F7將跟蹤進(jìn)入被調(diào)用的子程序,而F8則把CALL指令及其調(diào)用的子程序當(dāng)作一條完整的指令,要執(zhí)行完子程序才停在CALL指令的下一條指令上?!阜祪眨菰赥D環(huán)境中,若只執(zhí)行程序的某一部分指令,怎樣處理?答:方法一:用設(shè)置斷點(diǎn)的方法。用上述第6條中的方法首先指定程序的起始執(zhí)行地址;用方向鍵把光標(biāo)移到要執(zhí)行的程序段的最后一條指令的下一條指令的起始處(注意,不能移到最后一條指令上,否則最后一條指令將不會(huì)被執(zhí)行),按F2設(shè)置斷點(diǎn)。也可按Alt-F2鍵,然后在彈出的輸入窗口中輸入斷點(diǎn)地址。按F9鍵執(zhí)行,程序?qū)?huì)停在所設(shè)置的斷點(diǎn)處。方法二:用“運(yùn)行程序到光標(biāo)處”的方法。用上述第6條中的方法首先指定程序的起始執(zhí)行地址;用方向鍵把光標(biāo)移到要執(zhí)行的程序段的最后一條指令的下一條指令上(注意,同方法一)。按F4鍵執(zhí)行程序,程序?qū)?huì)執(zhí)行到光標(biāo)處停下。方法三:用“執(zhí)行到指定位置”的方法。用上述第6條中的方法首先指定程序的起始執(zhí)行地址;按Alt-F9,在彈出的輸入窗口中輸入要停止的地址(即要在哪條指令起始處暫停,就輸入哪條指令的地址),按回車(chē),程序?qū)?huì)執(zhí)行到指定位置處暫停。[返冋]9.被調(diào)試程序的顯示輸出看不見(jiàn)怎么辦?答:在TD環(huán)境下按Alt-F5鍵。[返冋]用MASM編譯時(shí)產(chǎn)生警告錯(cuò)誤會(huì)影響結(jié)果嗎?答:會(huì)。警告錯(cuò)誤是指仍然生成目標(biāo)代碼,并非是指目標(biāo)代碼是正確的。[返冋]在WIN2000和WINDOWSXP環(huán)境中可以使用命令行方式的EDIT編輯器和調(diào)試程序DEBUG嗎?為什么點(diǎn)擊該程序時(shí)會(huì)出現(xiàn):IncorrectDOSversion的錯(cuò)誤信息?答:EDIT和DEBUG屬于系統(tǒng)命令程序文件,運(yùn)行前要核對(duì)版本號(hào),WIN98/2000/XP有各自配套的系統(tǒng)命令文件,使用上述兩個(gè)軟件時(shí)必須注意版本匹配。WIN98的命令文件放置在WINDOWS(或WIN98)文件夾下的COMMAND子文件夾中;WIN2000/XP的系統(tǒng)命令文件路徑一般為:WINDOWS\SYSTEM32或WINNT\SYSTEM32。「返冋]若使用DEBUG調(diào)試運(yùn)行程序,如何裝入程序?答:在命令行界面輸入:DEBUGABX.EXE或雙擊DEBUG圖標(biāo),之后在DEBUG窗口中輸入:nABC.EXE/L100兩條命令;運(yùn)行程序即被載入。「返冋]在匯編語(yǔ)言源程序中怎樣加入中文注釋?zhuān)看穑河糜浭卤净駽++編輯器編輯源程序。但須注意中英文切換,源程序中必須使用英文標(biāo)點(diǎn)符號(hào)。[返冋]用記事本工具編輯源程序,主名為123_ABCDEF.ASM,為什么編譯程序MASM報(bào)告找不到該文件?答:MASM遵循MS-DOS的命名原則,即文件主名最長(zhǎng)為8個(gè)字符,上述文件主名超過(guò)了規(guī)定。[返冋]用記事本工具編輯源程序,取名為123.ASM,為什么編譯程序MASM報(bào)告找不到該文件?答:出現(xiàn)此種情況,往往123.ASM并非文件名的全部,其最后的擴(kuò)展名仍是.TXT,解決的辦法是:點(diǎn)擊“我的電腦”或“資源管理器”在“查看”或“工具”菜單中選擇“文件夾選項(xiàng)”,選擇“查看”選項(xiàng)卡,將其中的“隱藏已知文件類(lèi)型的擴(kuò)展名”選項(xiàng)取消,可顯示全部文件名,再為文件重新命名。[返冋]已在程序中設(shè)有如下定義:STACKSEGMENT/DB200DUP(0)/STACKENDS/為什么LINK仍然警告:nostacksegment?答:將段定義修改為:STACKSEGMENTSTACK;后面的STACK項(xiàng)是組合類(lèi)型,即不再出現(xiàn)警告信息。[返冋]使用DEBUG調(diào)試程序,如何設(shè)置斷點(diǎn)?答:例如,在DEBUG命令窗口中輸入:G=100,0150;表示從代碼段偏移地址100H執(zhí)行到150H處中斷,屆時(shí)可通過(guò)各寄存器及存儲(chǔ)器察看程序的中間結(jié)果。[返冋]用TD調(diào)試一個(gè)顯示字符串的程序,當(dāng)單步運(yùn)行至:/MOVAL,09/INT21H/語(yǔ)句后,程序似乎變得冗長(zhǎng)難耐,是什么原因?答:在INT21H處單步運(yùn)行,即進(jìn)入了DOS系統(tǒng)調(diào)用中斷程序服務(wù)程序,其中包含了從0~62H個(gè)功能子程序,用參數(shù)AH區(qū)分。9號(hào)功能只是其中一個(gè)分支,內(nèi)中還要有輸入輸出底層處理。運(yùn)行至此,應(yīng)該將TD窗口的光標(biāo)置于INT下一條語(yǔ)句前,按F4鍵,即以光標(biāo)所在處為斷點(diǎn),就可自動(dòng)執(zhí)行完該調(diào)用程序。[返冋]實(shí)驗(yàn)一熟悉PC機(jī)的使用和調(diào)試匯編程序的方法一.實(shí)驗(yàn)?zāi)康?掌握匯編程序由編輯、編譯、鏈接到調(diào)試的全過(guò)程。
2.通過(guò)匯編調(diào)試工具加深對(duì)機(jī)器指令執(zhí)行過(guò)程的了解。實(shí)驗(yàn)要求:了解PC機(jī)的系統(tǒng)類(lèi)型和基本配置,熟悉PC機(jī)DOS下的基本操作命令。掌握使用PE2(或使用SIDEKICH(SK),edit)等編輯器對(duì)匯編語(yǔ)言源程序(擴(kuò)展名.ASM)的編輯操作。學(xué)會(huì)用宏匯編程序MASM(或TASM)對(duì)匯編語(yǔ)言源程序進(jìn)行匯編和使用連接程序LINK(或TLINK)對(duì).OBJ文件鏈接生成.EXE文件。學(xué)會(huì)用匯編調(diào)試工具軟件TD(或DEBUG)對(duì).EXE文件進(jìn)行調(diào)試及執(zhí)行程序的方法。利用TD(或DEBUG)加深對(duì)機(jī)器指令的了解。了解匯編幫助軟件NG的使用方法。實(shí)驗(yàn)儀器:PC機(jī)實(shí)驗(yàn)步驟:1.開(kāi)機(jī):開(kāi)機(jī)后有兩種狀態(tài),即進(jìn)入DOS操作系統(tǒng)或WINDOWS操作系統(tǒng),下面分別介紹進(jìn)入后實(shí)驗(yàn)步驟:DOS操作系統(tǒng):打開(kāi)機(jī)器上的開(kāi)關(guān),這時(shí)屏幕上顯示〃〉〃提示符即進(jìn)入DOS工作狀態(tài)。要求:每個(gè)同學(xué)使用自己的學(xué)號(hào)或其它有特征的字符串建立自己的子目錄,建立方法見(jiàn)〈〈DOS的基本操作命令〉〉。開(kāi)機(jī)后,若出現(xiàn)系統(tǒng)崩潰(稱(chēng)〃死機(jī)〃)現(xiàn)象,一般使用熱啟動(dòng)(CTRL-ALT-DEL鍵)或復(fù)位鍵重新啟動(dòng)。WINDOWS操作系統(tǒng)開(kāi)機(jī)后進(jìn)入WINDOWS環(huán)境,選擇MS-DOS方式的圖標(biāo),連擊鼠標(biāo)的左鍵,會(huì)進(jìn)入DOS環(huán)境,一般地進(jìn)入的工作目錄是D:\USER,(如果工作目錄不是D:\USER,可以通過(guò)對(duì)MS-DOS方式的屬性修改完成,具體方法是,在WINDOWS環(huán)境下,光標(biāo)移至MS-DOS方式圖標(biāo),擊右鍵,會(huì)彈出一菜單,選擇屬性欄,下圖所示:MS-DOS方式屬性 常規(guī)聞丨字體丨肉存I常規(guī)聞丨字體丨肉存I需罰IMs-bos肓式類(lèi)型:指向MS-DOS程序飾鍥捷肓式位置: C:\WINDOWS\Desktop大?。?67字節(jié)(967字節(jié)〕,占用£096字節(jié)MS-DOS名稱(chēng):MS-DOS^l.FIF創(chuàng)建時(shí)間:1999年U月13日.21:56>28修改時(shí)間:20UU年1月15日11:.27:20訪間時(shí)間:20.00年4月12日屬性:廠口珪魚(yú)”r隱藏①)◎存檔?確定 取消然后選擇程序,會(huì)顯示如下窗口:注意:將工作目錄修改為D:\USERNG(匯編幫助軟件)和SK(編輯軟件)的啟動(dòng)。NG的啟動(dòng):在DOS提示符下鍵入NG,將NG駐留到內(nèi)存,用戶可以隨時(shí)調(diào)出(具體使用方法見(jiàn)〈〈NG的使用〉〉。SK的啟動(dòng)(若使用SK編輯器):在DOS提示符下鍵入SK,將SK駐留到內(nèi)存,用戶可隨時(shí)調(diào)出(具體使用方法見(jiàn)〈〈SK的使用〉〉),該軟件適合較短程序的編輯和調(diào)試。編輯、編譯、鏈接和調(diào)試匯編語(yǔ)言程序過(guò)程。A建立匯編語(yǔ)言程序使用PE2建立匯編語(yǔ)言程序在DOS提示符下使用PE2編輯器輸入用戶匯編語(yǔ)言程序(擴(kuò)展名為.ASM)?!礟E2文件名.ASM(回車(chē))使用SK建立匯編語(yǔ)言程序使用SK2熱鍵啟動(dòng)SK編輯命令見(jiàn)《PE2的使用方法》和《SK的使用方法》。使用EDIT建立匯編程序>edit文件名.asm(回車(chē))B匯編程序生成目標(biāo)程序經(jīng)過(guò)編輯命令建立的匯編語(yǔ)言源程序使用匯編程序編譯成目標(biāo)程序一使用MASM宏匯編進(jìn)行編譯〉MASM文件名在匯編程序調(diào)入后,先顯示版本號(hào),然后出現(xiàn)第一行提示,Objectfilename[源文件名.OBJ]:;默認(rèn)該文件名回車(chē)。SourceListing[NUL.LST]:源文件名或其他;輸入文件名建立可打印文件。CrossReference[NUL.CRF]:源文件名或其他;回車(chē)。WarningErrorssevereErrors如果匯編過(guò)程中發(fā)現(xiàn)源程序有錯(cuò)誤,由以上兩種錯(cuò)誤類(lèi)型分別列出。此時(shí)可分析錯(cuò)誤原因,返回編輯程序修改源程序。匯編程序出錯(cuò)信息見(jiàn)《匯編程序出錯(cuò)信息表》,注意出錯(cuò)的類(lèi)型及出錯(cuò)的源文件對(duì)應(yīng)行。若不需要產(chǎn)生.LST和.CRF文件,可在>下加";">MASM文件名;二使用TASM進(jìn)行編譯例如:編譯A.ASM文件。>TASMA<Enter>TurboAssemblerVersion2.5Copyright(c)1988,1991BorlandInternationalAssemblingfile:a.ASMErrormessages:NoneWarningmessages:NonePasses:1Remainingmemory:162k可按要求填加必要的選擇。例如若需要在TD中跟蹤源文件調(diào)試,可使用/zi選擇(應(yīng)注意選擇項(xiàng)英文的大小寫(xiě)):>TASM/ziA<Enter>若要生成列表文件,可用如下操作:>TASMA,,A.LST<Enter>TASM的選擇項(xiàng)如下(可用/H顯示):Syntax:TASM[options]source[,object][,listing][,xref]/a,/sAlphabeticorSource-codesegmentordering/cGeneratecross-referenceinlisting/dSYM[=VAL]DefinesymbolSYM=0,or=valueVAL/e,/rEmulatedorRealfloating-pointinstructions/h,/?Displaythishelpscreen/iPATHSearchPATHforincludefiles/jCMDJaminanassemblerdirectiveCMD(eg./jIDEAL)/kh#Hashtablecapacity#symbols/l,/laGeneratelisting:l=normallisting,la=expandedlisting/ml,/mx,/muCasesensitivityonsymbols:ml=all,mx=globals,mu=none/mv#Setmaximumvalidlengthforsymbols/m#Allow#multiplepassestoresolveforwardreferences/nSuppresssymboltablesinlisting/o,/opGenerateoverlayobjectcode,PharLap-style32-bitfixups/pCheckforcodesegmentoverridesinprotectedmode/qSuppressOBJrecordsnotneededforlinking/tSuppressmessagesifsuccessfulassembly/w0,/w1,/w2Setwarninglevel:w0=none,w1=w2=warningson/w-xxx,/w+xxxDisable(-)orenable(+)warningxxx/xIncludefalseconditionalsinlisting/zDisplaysourcelinewitherrormessage/zi,/zdDebuginfo:zi=full,zd=linenumbersonly鏈接程序生成可執(zhí)行文件由匯編后建立的目標(biāo)碼文件,必須經(jīng)過(guò)鏈接后才能生成可執(zhí)行的命令文件一使用LINK完成連接>LINK文件名;回車(chē)后調(diào)入鏈接程序,此時(shí)屏幕顯示。RunFile[文件名.EXE]:;回車(chē)默認(rèn)該文件名。ListFile[NUL.MAP]:;Libraries[.LIB]:;回車(chē)。Warning:;提示錯(cuò)誤。如果有錯(cuò)誤,返回編輯程序重新修改源程序。若要生成.COM文件,則用EXE2BIN實(shí)現(xiàn):>EXE2BINA.EXEA.COM二使用TLINK完成連接例如:鏈接A文件。>TLINKA<Enter>TurboLinkVersion4.0Copyright(c)1991BorlandInternational可按要求填加必要的選擇。例如若需要在Debug中跟蹤源文件調(diào)試,應(yīng)使用/V選擇(應(yīng)注意選擇項(xiàng)英文的大小寫(xiě)):>TLINK/vA<Enter>若要生成COM文件,可使用/Tdc選擇:>TLINK/TdcA<Enter>TLINK的選擇項(xiàng)如下(可用/H顯示):Syntax:TLINKobjfiles,exefile,mapfile,libfiles,deffile@xxxxindicatesuseresponsefilexxxxOptions:/m=mapfilewithpublics/x=nomapfileatall/i=initializeallsegments/l=includesourcelinenumbers/L=specifylibrarysearchpaths/s=detailedmapofsegments/n=nodefaultlibraries/d=warnifduplicatesymbolsinlibraries/c=lowercasesignificantinsymbols/3=enable32-bitprocessing/v=includefullsymbolicdebuginformation/e=ignoreExtendedDictionary/t=createCOMfile(sameas/Tc)/o=overlayswitch/P[=NNNNN]=packcodesegments/A=NNNN=setNewExesegmentalignmentfactor/ye=expandedmemoryswapping/yx=extendedmemoryswapping/C=casesensitiveexportsandimports/Txx=specifyoutputfiletype/Tdx=DOSimage(default)/Twx=Windowsimage(thirdlettercanbec=COM,e=EXE,d=DLL)匯編語(yǔ)言動(dòng)態(tài)調(diào)試工具調(diào)試匯編程序一使用DEBUG進(jìn)行調(diào)試DEBUG是專(zhuān)為匯編語(yǔ)言設(shè)計(jì)的一種調(diào)試工具,可用來(lái)檢查,修改存儲(chǔ)單元和寄存器的內(nèi)容裝入,存儲(chǔ)及啟動(dòng)運(yùn)行程序,也可用DEBUG匯編簡(jiǎn)單的匯編語(yǔ)言程序。>DEBUG文件名.EXE-;"-"是DEBUG的提示符DEBUG下的基本命令及格式(具體見(jiàn)《DEBUG使用說(shuō)明》)命令任務(wù)格式A(Assmble)匯編語(yǔ)句A[address]C(Compare)比較內(nèi)存CrangeaddressD(Dump)顯示內(nèi)存D[address]E(Enter)改變內(nèi)存EaddresslistF(Fill)填充內(nèi)存FrangelistG(GO)執(zhí)行程序G[address]H(Hexarthmetic)十六進(jìn)制運(yùn)算HValueValueI(Input)輸入IportaddressL(Load)裝入內(nèi)存L[address]M(Move)傳送內(nèi)存MrangerangeN(Name)定義文件N[d:][path]filename[.com]O(output)輸出字節(jié)OportaddressbyteQ(Quit)退出DEBUG狀態(tài)QR((Register)顯示寄存器R[registername]S(Search)檢索字符SranglistT(Trace)單步/多步跟蹤TorT[address][value]U(Unassmble)反匯編U[address]orU[range]W(Write)文件或數(shù)據(jù)寫(xiě)盤(pán)W[address[drivesectorsector]]二使用TD(TurboDebugger)調(diào)試匯編程序TD設(shè)計(jì)具有Turbo系列語(yǔ)言的特點(diǎn),其多重覆蓋窗口、下拉菜單和彈出菜單的結(jié)合給用戶提供了一個(gè)快速友好的交互環(huán)境,幫助系統(tǒng)使用十分方便。以下給出常用操作命令,具體命令見(jiàn)《TurboDebugger命令一覽表》。A啟動(dòng)TurboDebuggerSyntax:>TDobjfiles例如:調(diào)試已編譯鏈接后的A文件:>TDA<Enter>進(jìn)入TD后屏幕顯示下拉菜單欄:在屏幕的上端代碼區(qū)域:按地址,機(jī)器碼及助記符組成寄存器域:CPU中寄存器內(nèi)容標(biāo)志域:CPU中所有標(biāo)志狀態(tài)堆棧區(qū)域:當(dāng)前堆棧內(nèi)容數(shù)據(jù)區(qū)域:以地址,ASCII碼值及ASCII碼顯示數(shù)據(jù)常用命令欄:在屏幕下端屏幕中間區(qū)域可通過(guò)TAB鍵移動(dòng)BF10或Alt-進(jìn)入菜單提示欄,回車(chē)選擇對(duì)應(yīng)菜單例如:Alt-F進(jìn)入屏幕上端的File欄,回車(chē)后顯示下拉菜單,移動(dòng)光標(biāo)可選擇相應(yīng)功能。CAlt-F10訪問(wèn)局部菜單通過(guò)該命令,用戶可容易的進(jìn)入當(dāng)前欄的局部菜單。D窗口命令使用下拉菜單的Window,可進(jìn)入多窗口顯示,用戶可調(diào)試窗口的位置和大小,以最佳的方式觀察程序執(zhí)行過(guò)程同時(shí)可切換不同顯示窗口。E常用執(zhí)行命令在常用命令欄有提示,以下給出更有趣的命令:連續(xù)慢速執(zhí)行在RUN菜單下選擇Animate反向跟蹤執(zhí)行Alt-F4斷點(diǎn)方式執(zhí)行用F2設(shè)斷點(diǎn),使用RUN命令后停在斷點(diǎn)處五.實(shí)驗(yàn)內(nèi)容:1.輸入以下程序,完成由編輯、編譯、鏈接到調(diào)試的全過(guò)程。在調(diào)試過(guò)程中應(yīng)使用單步、斷點(diǎn)等方法調(diào)試,注意觀察寄存器、標(biāo)志位和有關(guān)存儲(chǔ)器內(nèi)容的變化A將S1(BYTE),S2(WORD)和S3(DWORD)送至D1,D2,D3.注意:以下程序有誤,在調(diào)試過(guò)程中加以修改使之正確DATASEGMENTSS1 DB1234HSS2 DWEA32HSS3 DD12345678HDD1DB0DD2DW?DD3DW?DATEENDSCODESEGMEMTASUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAL,SS1MOVDD1,ALLEASI,SS2LEADI,DD2MOVAX,[SI]MOV[DI],AXMOVSI,OFFSETS3MOVDI,OFFSETD3MOVAX,[SI]MOVD3,AXINCSIINCDIMOVAX,[SI]MOV[DI],AXMOVAX,4C00H;返回系統(tǒng)INT21HCODEENDSENDSSTRATB完成兩個(gè)長(zhǎng)整數(shù)相加的匯編程序要求:調(diào)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年超小型鈕子開(kāi)關(guān)項(xiàng)目可行性研究報(bào)告
- 2025年離子噴霧機(jī)項(xiàng)目可行性研究報(bào)告
- 2025年玻璃圓形切割臺(tái)項(xiàng)目可行性研究報(bào)告
- 2025年汽車(chē)不解體探傷儀項(xiàng)目可行性研究報(bào)告
- 2025年普通型鋼珠滑軌項(xiàng)目可行性研究報(bào)告
- 2025年承接式管道密封圈項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國(guó)啟動(dòng)機(jī)油泵試驗(yàn)臺(tái)行業(yè)投資前景及策略咨詢(xún)研究報(bào)告
- 2025至2031年中國(guó)保溫冰袋行業(yè)投資前景及策略咨詢(xún)研究報(bào)告
- 2025年亞麻粘項(xiàng)目可行性研究報(bào)告
- 2025年P(guān)ET耐高溫瓶吹瓶機(jī)項(xiàng)目可行性研究報(bào)告
- 2023年菏澤醫(yī)學(xué)專(zhuān)科學(xué)校單招綜合素質(zhì)模擬試題及答案解析
- 常見(jiàn)食物的嘌呤含量表匯總
- 人教版數(shù)學(xué)八年級(jí)下冊(cè)同步練習(xí)(含答案)
- SB/T 10752-2012馬鈴薯雪花全粉
- 2023年湖南高速鐵路職業(yè)技術(shù)學(xué)院高職單招(英語(yǔ))試題庫(kù)含答案解析
- 濕型砂中煤粉作用及檢測(cè)全解析
- 積累運(yùn)用表示動(dòng)作的詞語(yǔ)課件
- 機(jī)動(dòng)車(chē)登記證書(shū)英文證書(shū)模板
- 第8課《山山水水》教學(xué)設(shè)計(jì)(新人教版小學(xué)美術(shù)六年級(jí)上冊(cè))
- T∕ZSQX 008-2020 建設(shè)工程全過(guò)程質(zhì)量行為導(dǎo)則
- 質(zhì)量管理體系基礎(chǔ)知識(shí)培訓(xùn)-2016
評(píng)論
0/150
提交評(píng)論