試驗(yàn)1初級(jí)程序的編寫(xiě)與調(diào)試試驗(yàn)_第1頁(yè)
試驗(yàn)1初級(jí)程序的編寫(xiě)與調(diào)試試驗(yàn)_第2頁(yè)
試驗(yàn)1初級(jí)程序的編寫(xiě)與調(diào)試試驗(yàn)_第3頁(yè)
試驗(yàn)1初級(jí)程序的編寫(xiě)與調(diào)試試驗(yàn)_第4頁(yè)
試驗(yàn)1初級(jí)程序的編寫(xiě)與調(diào)試試驗(yàn)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、,南昌大學(xué)實(shí)驗(yàn)報(bào)告學(xué)生姓名: 鄧立曦 學(xué) 號(hào):6100409206專業(yè)班級(jí): 電氣信息 出類(lèi)096班實(shí)驗(yàn)類(lèi)型:口 驗(yàn)證綜合口設(shè)計(jì)口創(chuàng)新 實(shí)驗(yàn)日期:實(shí)驗(yàn)成績(jī):實(shí)驗(yàn)1初級(jí)程序的編寫(xiě)與調(diào)試實(shí)驗(yàn)(一).實(shí)驗(yàn)?zāi)康?進(jìn)一步熟悉 DEBUG命令;.掌握數(shù)據(jù)在內(nèi)存中的存放方式和內(nèi)存操作數(shù)的幾種尋址方式,段寄存器和物理地址 計(jì)算;.熟悉數(shù)據(jù)傳送指令、算術(shù)運(yùn)算指令、邏輯指令、數(shù)據(jù)串傳送程序和數(shù)據(jù)串傳送指令 MOVS、STOS及重復(fù)前輟REP;.掌握簡(jiǎn)單的匯編語(yǔ)言程序編寫(xiě)與調(diào)試。.實(shí)驗(yàn)內(nèi)容.內(nèi)存操作數(shù)及各種尋址方式使用;.求累加和程序;.多字節(jié)加法程序;.數(shù)據(jù)串搬家程序;.段寄存器概念及字符串傳送指令練習(xí)。.實(shí)驗(yàn)要

2、求.仔細(xì)閱讀有關(guān) DEBUG命令的內(nèi)容,對(duì)有關(guān)命令,要求事先準(zhǔn)備好使用的例子;.閱讀數(shù)據(jù)傳送指令、算術(shù)運(yùn)算指令、邏輯指令、數(shù)據(jù)串傳送程序和數(shù)據(jù)串傳送指令MOVS、STOS及重復(fù)前輟 REP的內(nèi)容;.用DEBUG的有關(guān)命令調(diào)試本實(shí)驗(yàn)中的求累加和程序、多字節(jié)加法程序、數(shù)據(jù)串搬 家程序段。.實(shí)驗(yàn)環(huán)境PC微機(jī);DOS操作系統(tǒng)或 Windows操作系統(tǒng);MASM.EXE , LINK.EXE , DEBUG.COM 或宏匯編集成環(huán)境。.實(shí)驗(yàn)步驟.內(nèi)存操作數(shù)及各種尋址方式使用34 12MOV AX , 1234 ;MOV 1000 , AX;直接尋址方式皆MitFL陰MOV BX, 1002;MOVBYT

3、E PTRBX , 20;寄存器間接尋址方式D 1000 137D:1000 34 12 20 00MOV DL , 39;INC BXMOV BX , DL寄存器間接尋址方式卜 D 1000 137D:1000 34 12 20 39 00DEC DLMOV SI, 3MOV BX+SI , DL ;基址變址尋址方式tD 1003 37DU000 34 12 20 3?段眼 38MOVBX+SI+1 , DL137D:1000 34 12 20 39 00 0038-00MOV WOR PTRBX+SI+2284634 12 20 39 00 00 38 38-46 Z8步驟:(1)用A命令

4、鍵入上述程序,并用 T命令逐條運(yùn)行。(2)每運(yùn)行一條有關(guān)內(nèi)存操作數(shù)的指令,要用D命令檢查并記錄有關(guān)內(nèi)存單元的內(nèi)容并注明是什么尋址方式。注意D命令顯示結(jié)果中右邊的 ASCII字符及雙字節(jié)數(shù)存放法。.求累加和程序:程序: TOC o 1-5 h z MOVBX ,1000MOVCX ,10SUBAX ,AXLOP: ADDAL ,BXADCAH ,0INCBXJ:LOOPLOPINT 3步驟:LOP和J的實(shí)際地址,(1)用A命令將程序鍵入到100H開(kāi)始的內(nèi)存中,在鍵入時(shí)記下標(biāo)號(hào) 在鍵入LOOP指令時(shí)LOP用實(shí)際地址值代替;100 MOU BK.1000103 NOU CX.1G 1106 SUB1

5、108 ADD AL.lBXl I RA ADC AH.g110D INC BK110E LOOP iae 110 INI 3 111(2)用命令N AA將此程序命名為文件 AA(文件名可任取);(3)用R命令將BX: CX改為程序長(zhǎng)度值(即最后一條指令后面的地址減去開(kāi)始地址;(4)用命令W 100將此程序存到AA命名的磁盤(pán)文件中;(5)用命令Q退出DEBUG ;(6)用命令DEBUG AA再次調(diào)入DEBUG和文件AA ,可用U命令檢查調(diào)入程序; 若調(diào)入DEBUG時(shí)忘了加AA文件名,可用N命令和L命令將文件調(diào)入;(7)用E命令在內(nèi)存地址1000H處鍵入16個(gè)數(shù)字;El 000 )B76:1Q0

6、 12.1 )376:1008 7M.92 1444107.3 BA.Ofl.14S0.4 44.120fti.7 87.15(8)用命令G=100 J(J用實(shí)際地址代替),使程序運(yùn)行并停在斷點(diǎn) J上,檢查AX, BX的值 是否符合你的預(yù)計(jì)值;(9)用T命令運(yùn)行一步,觀察程序方向 (IP值)和CX值是否與你的估計(jì)一樣,若不一樣, 檢查程序是否有錯(cuò);(10)重復(fù)G、J與T,再檢查AX是否正確;(11)用G命令使程序運(yùn)行到結(jié)束,檢查 AX值是否正確。.多字節(jié)加法程序程序:MOV DI, 1000MOV CX, 8MOV SI, 2000 CLCLOP:MOV AL , SIADC DI , ALI

7、NC SIINC DILOOP LOPINT 20步驟:(1)用命令鍵入此程序(2)用E命令在1000H開(kāi)始處鍵入一個(gè) 療節(jié)被加數(shù),在2000H開(kāi)始處鍵入一個(gè)8字節(jié)加數(shù), 均為低字節(jié)在前面。L3B6:0100MOUDI,1900HOUcx,366:0106MOUSI,2000CLCMOUSIL3B6:010CABC【DI LALL3B6:010EINCSIL3B6:010FINCDIL3B6:01i0 LOOP 010AL3B6:KJ112 INI 20L3B6:0114.數(shù)據(jù)串搬家程序(1)用A命令鍵入下列程序:MOV SI, 1000MOV DI, 1500MOV CX, 0FH LOP:

8、 MOV AL , SIMOV DI , ALINC SIINC DILOOP LOPINT 20B76 B76B76B76B76 B?6 B76 B76 B76 B76: 0100 ; 0103 :O10t:ai06 :0109 :010B :O10D :010E :H10F:0111mou sij.1000mou di,1500mou cx,0fhErromou mou mou inc inc loop intcxr yf al, Esi LdiEal0i i 1 0sd 2(2)用A命令DB偽指令在1000H鍵入下列字符串:IBM_PC COMPUTER(3)用G命令運(yùn)行此程序,并用 D

9、命令檢查目的地址處的字符與源串是否一致。-D1500麗76 : 1500 49 42 4D 5F 50 43 20 434F 4n 50 55 54 45 52 2F IRLPC CQMFUTER).段寄存器概念及字符串傳送指令練習(xí)(1)用A命令鍵入下列程序:MOVSI,0MOVDI,0MOVAX ,1000MOVDS,AXMOVAX ,1500MOVES,AXMOVCX,0FCLDREPMOVSBINT20|0B76:0100nousi0|0B76:B1 03mowdi.e|0B76:0106movax ,100009mowds|0B76:010Bnouax. 1500PB76:B1 0Fm

10、owes !.axPB76:0110novcx,0fBB76:0113cldfeB76:0114repmousbPB76:M116int20MB76:0110(2)用A命令DB偽指令在1000: 0000處鍵入字符串舊M_PC COMPUTER,并用D命檢查皿0+ 幽HU DB11 BM_PC COMPUTER1DI 000:00001 目眄:眄口0_49 42 4D SF / 43 目 43-4F 4D 吐 55 54 45 52 眄I RM PC 8MFIHER(3)用D命令中查0F00: 1000處內(nèi)容,看是否一樣。為什么 相同,因?yàn)樗鼈兊膶?shí)際物理地址是同一個(gè)IBMPC COMPUTER

11、.-D0F00:1B00 0F90:1000 49 42 4D 5F 50 43 20 43-4F 4D 50 55 54 45 52 00(4)用G命令運(yùn)行此程序,檢查目的地址 1500: 0000處內(nèi)容。并記下 DS與ES值。內(nèi)容:IBM_PC COMPUTERDS:1000 ES:1500S=1000 ES=1500IBM_PC COMPUTER.49 42 4D 5F 56 43 20 43-4F 4D 50 55 54 4s 52 00(5)修改此程序,使ESW DS為同一值,以減少一條指令,而源物理地址和目的物理地址 (是多少?)仍和原來(lái)一樣。源物理地址:10000目的物理地址:1

12、5000MOVSI,0MOVDI,5000MOVAX ,1000MOVDS,AXMOVES,AXMOVCX,0FCLDREPMOVSBINT20.自編程序用16位減法指令編一個(gè)32位(4字節(jié))數(shù)減法程序,兩個(gè)源數(shù)及結(jié)果存放地址同多字節(jié)加法 程序,調(diào)試并做記錄。MOV SI,1000MOV DI,2000MOV CX,4CLCLOP:MOV AL,SISBB DI,ALDEC SIDEC DILOOP LOPINT 20六.實(shí)驗(yàn)報(bào)告要求.各項(xiàng)實(shí)驗(yàn)記錄;.要求你修改的程序的清單(修改后)和調(diào)試記錄;.自編程序原稿及調(diào)試后修正稿,寫(xiě)出原稿錯(cuò)在那里。七.思考題MOV BYTE PTRBX , 20MOV WORD PTRBX+SI+2 , 2846上述指令中BYTE PTR及WORD PTR偽操作不加行不行?試一試。第一條可以,第二條不行.用G命令運(yùn)行多字節(jié)加法程序,并用D命令檢查其結(jié)果(存放在哪里?),是否正確?存放在DS: 1000.將多字節(jié)加法程序中的INT 20H指令改為INT 3,有何區(qū)別?若這條指令不加,行不 行?試一試。能行,改成

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論