匯編與微機實驗-錯誤分析_第1頁
匯編與微機實驗-錯誤分析_第2頁
匯編與微機實驗-錯誤分析_第3頁
匯編與微機實驗-錯誤分析_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、匯編語言程序設計實驗實驗題目: 指令錯誤分析及尋址方式實驗(二)專業(yè):通信工程系年級:2012 級班級:2 班學生學號:23320122203848學生:實驗時間: 2014 年 10 月 17 日 5.6 節(jié)成績:預習審核:評閱簽名:一、實驗目的掌握 8086 指令系統(tǒng)中各種尋址方式的原理與用法掌握 8086 的數據傳送指令掌握 8086 匯編語言程序設計的上機過程掌握 8086 匯編語言源程序結構及常用偽指令的用法掌握DEBUG 中U 命令、D 命令和 T 命令的操作二、實驗準備(1)按照 8086 尋址方式和指令系統(tǒng)的數用規(guī)則,分析并寫下表 2.3 中每條指令的錯誤原因。注意這些錯誤都是

2、初學者常犯的,以后編程過程中應避免重復犯同一個錯誤。(2)仔細閱讀表 2.4 的程序,按照程序各個段在器中的分配規(guī)則,分析表2.4 程序裝入器后各個段中的數據安排情況,填入表 2.5 中。按照各種尋址方式的原理及指令的功能,分析表 2.4 程序中一些指令的執(zhí)行結果,填入指令后主式的空格中。三、必做實驗編輯表 2.4 的源程序,然后匯編、連接,若發(fā)現(xiàn)有錯誤要修改源程序直至錯誤全部排除;最后進入DEBUG 調試此程序。表 2.4 尋址方式驗證DATA SEGMENTA1 DW 1234H A2 DB -1,0ABH DW -5A3 DB 56,56H,56,A a$ DATA ENDSEXTRA

3、SEGMENTB1 DB A,B DW ABB3 EQU THIS BYTE B2 DW A2DD A3DB (A3-A2)/2 DB $-B2DB LENGTH BTMEXTRA ENDS STACK SEGMENTBTM DW 16 DUP(?),1,2,3,4 STACK ENDSCODE SEGMENTAME CS:CODE,DS:DATA,ES:EXTRA,SS:STACKSTART:MOV AX,DATAMOV DS,AXMOV AX,EXTRA MOV ES,AX MOV AX,STACK MOV SS,AXMOV SP,SIZE BTMMOV AX,A1+3 分析:AH=FBH

4、,AL=ABH,驗證:AH=FBH,AL=ABH MOV AX,B2 分析:AH=00H,AL=02H,驗證:AH=00H,AL=02H MOV BP,OFFSET A1MOV AX,BP 分析:AH=00H,AL=00H,驗證:AH=00H,AL=00H MOV AX,DS:BP分析:AH=12H,AL=34H,驗證:AH=12H,AL=34H MOV AX,ES:BP分析:AH=42H,AL=41H,驗證:AH=42H,AL=41H MOV BX,OFFSET A1MOV AX,BX+3分析:AH=FBH,AL=ABH,驗證:AH=FBH,AL=ABH MOV AX,ES:BX+3 分析:

5、AH=02H,AL=41H,驗證:AH=02H,AL=41HPUSH AX 分析:SS=001EH,SS:SP=0241H,驗證:SS=001EH,SS:SP=0241H PUSH BX 分析:SS=001CH,SS:SP=0000H,驗證:SS=001CH,SS:SP=0000H POP AX 分析:SP=001EH,AX=0000H,驗證:SP=001EH,AX=0000HX分析:SP=0020H,BX=0241H,驗證:SP=0020H,BX=0241HPMOV BX,OFFSET B2MOV AL,6XLAT分析:AL=41H,驗證:AL=41H MOV AL,6XLAT B3 分析:

6、AL=02H,驗證:AL=02H MOV AH,4CH21HCODE ENDS END START表 2.5器中數據分配(預習)表 2.6器中數據分配(驗證)四、選做實驗1、已知 DS=1000H,BX=2100H,SI=02H,DI=01H,ES=SS=2000H,BP=2000H,(12100H)段地址DS076AES076BSS076C內存中各地址內容0123456789ABCDEF數據段3412FBFF38563536412061240000擴展段41424241020006006A07020710000000堆棧段0000000000006C07000012006F07A301內存中

7、各地址內容0123456789ABCDEF數據段3412FBFF38563536412061240000擴展段41424241020006006A07020710000000堆棧段0000000000006C07000012006F07A301(12104H)依次存放 12H、34H、56H、78H,9AH,(22000H)(22002H)依次存放 20、40、60,常量 VALUE=01H,說明下列指令執(zhí)行后AX 的內容MOV AX, 2000H 執(zhí)行后AX=2000H MOV AX, BX 執(zhí)行后AX=2100HMOV AX, 2102H執(zhí)行后AX=7856H MOV AX, BX執(zhí)行后A

8、X=3412H MOV AX, BX+01H執(zhí)行后AX=5634H MOV AX, BXSI 執(zhí)行后AX=3412H MOV AX, BPDI執(zhí)行后AX=5634H MOV AX, ES:BP 執(zhí)行后AX=4020H MOV AX, 2101H執(zhí)行后AX=5634HMOV AX, VALUEBXSI執(zhí)行后AX=2102H2、編寫一段程序,將數據段中 A 單元和 B 單元內容互換,A+1 單元和 B+1 單元內容互換DATA SEGMENTD1 DB 1,2,3,4 DATA ENDSAME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AX MOV AX,1234H ; MOV BX,5678H ; PUSH AXPUSH BXPOP AXPCODE ENDS END STARTX3、說明下列程序段執(zhí)行后AX 的值。假設數據段有:TABLE DW 158,258,358,458ENTRY DW 3代碼段:MOV BX, OFFSET TABLE MOV SI,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論