實(shí)驗(yàn)二數(shù)字處理程序(一)_第1頁
實(shí)驗(yàn)二數(shù)字處理程序(一)_第2頁
實(shí)驗(yàn)二數(shù)字處理程序(一)_第3頁
實(shí)驗(yàn)二數(shù)字處理程序(一)_第4頁
實(shí)驗(yàn)二數(shù)字處理程序(一)_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、教學(xué)實(shí)驗(yàn) 課程名稱_微機(jī)原理及應(yīng)用實(shí)驗(yàn)_學(xué)生學(xué)院 信息工程學(xué)院 專業(yè)班級 學(xué) 號 學(xué)生姓名 指導(dǎo)老師 樂金松 2016年 05 月 11 日實(shí)驗(yàn)二 數(shù)據(jù)處理程序(一)實(shí)驗(yàn)?zāi)康模?、進(jìn)一步學(xué)習(xí)、掌握匯編程序調(diào)試方法2、弄清子程序調(diào)用和返回過程 3、通過實(shí)驗(yàn)調(diào)試乘法、除法程序,弄清多字節(jié)乘除法程序的基本算法和程序設(shè)計(jì)方法實(shí)驗(yàn)內(nèi)容:1、 源程序的編輯2、 源程序的剪輯、編譯、鏈接3、 匯編程序調(diào)試,完成相關(guān)數(shù)據(jù)的記錄和分析實(shí)驗(yàn)步驟:一、 程序剪輯和編輯1、 下面是一段主程序模板,請將L8086軟件包中的乘法和除法程序的主體部分拷貝粘貼在指定的位置,以MAIN.ASM文件名保存;- STACK SEG

2、MENT STACK 'STACK' DB 1024 DUP (0)STACK ENDS;-;define data segmentDATA SEGMENT;- ;地址分配 R0 DW (?);0000H R1 DW (?);0002H R2 DW (?);0004H R3 DW (?);0006H R4 DW (?);0008H R5 DW (?);000AH R6 DW (?);000CH R7 DW (?);000EH;-XDD12345678H;0010H003HYDD87654321H;0014H0017HZDD55555555H;0018H001BH;- buffe

3、r0 DB (?);001CH buffer1 DB (?) buffer2 DB (?) buffer3 DB (?) buffer4 DB (?) buffer5 DB (?) buffer6 DB (?) buffer7 DB (?);-DATA ENDS;-;define code segmentPROGRAM SEGMENTASSUME CS:PROGRAM, DS:DATA, SS:STACK;*MAIN PROC FARSTART: PUSH DS ;return DOS standard program MOV AX,0 PUSH AX MOV AX,DATA ;set DS

4、MOV DS,AX;-主循環(huán)程序-DO_WAIT: CALLBMUL CALLBDIV;CALLKEY_SCAN;CALLBCTD;CALLDELAYJMPDO_WAIT RETMAIN ENDP;-以下為過程子程序-;=R2R3*R6R7=R4R5R6R7= BMULPROC NEAR ; BMULENDP;-R4R5R6R7/R2R3=R6R7-BDIVPROC NEAR ; BDIVENDP ;-二翻十程序-BCTDPROC NEARRETBCTDENDP;-軟件延時(shí)-DELAYPROC NEAR RETDELAYENDP;-鍵盤掃描-KEY_SCANPROC NEARRETKEY_SC

5、ANENDP;-PROGRAM ENDS END START;-2、將程序編譯連接成可執(zhí)行文件。二、 程序載入 1、 用DEBUG命令將程序載入到內(nèi)存2、 用反匯編U命令觀察和記錄以下信息:主程序起始地址: 145E : 0000 主程序結(jié)尾地址: 145E : 001E 乘法程序起始地址: 145E : 0013 乘法程序結(jié)尾地址: 145E : 005C 除法程序起始地址: 145E : 005D 除法程序結(jié)尾地址: 145E : 00B6 代碼段段地址: CS=145E用戶數(shù)據(jù)段段地址: DATA=145B當(dāng)前系統(tǒng)數(shù)據(jù)地段段地址: DS=140B乘法子程序入口地址: BMUL=145E

6、: 0013除法子程序入口地址: BDIV=145E : 005D3、 用R命令觀察記錄一下信息DS=145BES=140BSS=141BSP=03FA4、 執(zhí)行程序G0A回車,用D0命令觀察并記錄以下信息R0分得的單元地址:145B:0000 145B:0001R7分得的單元地址:145B:000E 145B:000FX分得的地址:145B:0010 145B:0013X雙字?jǐn)?shù)據(jù)存放的順序:單元號地址: 0010 內(nèi)容:0X78單元號地址: 0011 內(nèi)容:0X56單元號地址: 0012 內(nèi)容:0X34單元號地址: 0013 內(nèi)容:0X12Y分得的地址: 145B:0014 145B:001

7、7Y雙字?jǐn)?shù)據(jù)存放的順序:單元號地址:0014 內(nèi)容:0X21單元號地址: 0015 內(nèi)容:0X43單元號地址: 0016 內(nèi)容:0X65單元號地址: 0017 內(nèi)容:0X87三、 程序的調(diào)試1、調(diào)試乘法程序:1) 程序執(zhí)行到乘法子程序入口2) 在入口參數(shù)輸入:R2R3=100 0000 6400 R6R7=100 0000 64003) 執(zhí)行程序到乘法程序RETF指令處,查看結(jié)果 R4R5R6R7= 0X 0000 0000 0000 10274) 自行輸入一組數(shù)據(jù),復(fù)位IP=0,驗(yàn)證結(jié)果 R2R3=6 0000 0600 R6R7=5 0000 0500 執(zhí)行程序后:R4R5R6R7= 00

8、00 0000 0000 1E00 2、調(diào)試除法程序:1) 復(fù)位IP=0,將程序執(zhí)行到除法子程序入口2) 在入口信息輸入數(shù)據(jù): R4R5R6R7=10000 R2R3=100 3) 程序執(zhí)行到除法程序的RETF指令,用D0命令查看結(jié) R6R7= 0000 64004) 自選一組數(shù)據(jù),自行驗(yàn)證除法程序 R4R5R6R7=0000 0000 0000 1E00 R2R3=0000 0600 執(zhí)行程序后結(jié)果: R6R7= 0000 0500四、 編程,R0R1=X*Y/Z=R2R3*R6R7/R2R31) 自行編寫一段程序,調(diào)用乘法和除法程序,計(jì)算上式 DO_WAIT:MOVAX,XMOVR3,AX

9、MOVAX,X+2MOVR2,AXMOVAX,YMOVR7,AXMOVAX,Y+2MOVR6,AXCALLBMUL ;第一斷點(diǎn)MOVAX,Z ;第二斷點(diǎn)MOVR3,AXMOVAX,Z+2MOVR2,AXCALLBDIV ;第三斷點(diǎn)MOVAX,R7MOVR1,AXMOVAX,R6MOVR0,AXJMPDO_WAIT ;第四斷點(diǎn)2) 執(zhí)行程序,驗(yàn)證結(jié)果程序執(zhí)行到第一斷點(diǎn):R2R3=34127856(即是0x12345678)R6R7=65872143(即是0x87654321)程序執(zhí)行到第二斷點(diǎn):R4R5R6R7=A00905CDB870788D (即是0x09A0CD0570B88D78) 中間結(jié)果正確嗎? 答:運(yùn)行的中間結(jié)果正確,0x12345678*0x87654321=0x09a0cd0570b88d78 程序執(zhí)行到第三斷點(diǎn):R2R3= 55555555(即是0x55555555) R4R5R6R7= A00905CDB870788D (即是0x09A0CD0570B88D78)程序執(zhí)行到第四斷點(diǎn):R6R7=E21C1067(即是0x1

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論