匯編實(shí)驗(yàn)報(bào)告_第1頁
匯編實(shí)驗(yàn)報(bào)告_第2頁
匯編實(shí)驗(yàn)報(bào)告_第3頁
匯編實(shí)驗(yàn)報(bào)告_第4頁
匯編實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 實(shí)驗(yàn)三 算術(shù)運(yùn)算與代碼轉(zhuǎn)換程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康?1)掌握算術(shù)運(yùn)算程序的設(shè)計(jì)方法。2)掌握代碼轉(zhuǎn)換程序的設(shè)計(jì)方法。 3)進(jìn)一步掌握各種程序結(jié)構(gòu)。 4)熟練掌握和使用用DEBUG調(diào)試程序。 二、實(shí)驗(yàn)內(nèi)容1)編制兩個(gè)多字節(jié)整數(shù)加法和減法程序,并將結(jié)果按十六進(jìn)制形式顯示在屏幕上。2)編制程序?qū)崿F(xiàn)二進(jìn)制定點(diǎn)數(shù)與十進(jìn)制數(shù)的ASCII碼串之間轉(zhuǎn)換,并將結(jié)果顯示在屏幕上。3)編寫程序計(jì)算從鍵盤輸入兩個(gè)不超過四位的十進(jìn)制數(shù)的和、差、積、商,并以十進(jìn)制形式輸出。4)寫程序把從鍵盤輸入的四位十六進(jìn)制數(shù)轉(zhuǎn)換為壓縮的BCD碼,并顯示輸出。5)編寫一通用過程用來將十進(jìn)制數(shù)(從鍵盤輸入)轉(zhuǎn)換為P(從鍵盤輸入)進(jìn)制數(shù)。三、

2、實(shí)驗(yàn)設(shè)備 PC機(jī)一臺(tái)四、實(shí)驗(yàn)步驟 1) 按程序流程圖編制實(shí)驗(yàn)程序。 2) 輸入源程序。 3) 匯編、連接程序,執(zhí)行程序,檢查結(jié)果。 4) 程序的執(zhí)行可用DEBUG的G命令,也可用T命令單步跟蹤執(zhí)行。 5) 用D命令檢查執(zhí)行結(jié)果。 六、源程序?qū)嶒?yàn)一DATA SEGMENT NUM1 DB 22H,33H,44H,55H,66H,77H NUM1L DB 6H NUM2 DB 22H,22H,22H,22H NUM2L DB 4H OUTCOME1 

3、DB 10H DUP(0) OUTCOME2 DB 10H DUP(0) N DB 0H DATA ENDS STACK1 SEGMENT PARA STACK DW 20H DUP(0) STACK1 ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK1 START:MOV AX,DATA

4、 MOV DS,AX MOV CH,0 MOV SI,OFFSET NUM1 MOV DI,OFFSET NUM2 MOV AH,NUM1L MOV AL,NUM2L CMP AH,AL JAE CHA XCHG SI,DI XCHG AH,AL CHA:SUB AH,AL   MOV CL,AL CLC M

5、OV BX,OFFSET OUTCOME1LOP1:MOV AL,DI PUSH CX MOV CL,SI  ADC CL,AL MOV BX,CL INC BX INC SI INC DI POP CX LOOP LOP1 MOV CL,AH JCXZ LOP3 LOP2:PUSH CX MOV 

6、CL, BYTE PTR SI ADC CL,0 MOV BX,CL POP CX INC BX  INC SI  LOOP LOP2 LOP3:MOV CH,0 MOV SI,OFFSET NUM1 MOV DI,OFFSET NUM2 MOV AH,NUM1L MOV AL,NUM2L CMP&

7、#160;AH,AL JAE CHA1 XCHG SI,DI XCHG AH,AL CHA1:SUB AH,AL  MOV CL,AL CLC MOV BX,OFFSET OUTCOME2 LOP11:MOV AL,DI PUSH CX MOV CL,SI  SBB CL,AL MOV BX,CL INC BX

8、0;INC SI INC DI POP CX LOOP LOP11 MOV CL,AHJCXZ LOP7 LOP21:PUSH CX MOV CL, BYTE PTR SI SBB CL,0 MOV BX,CL POP CX INC BX  INC SI  LOOP LOP21 

9、LOP7:MOV DI,OFFSET OUTCOME1 ADD DI,10H MOV CX,11H LOP4: MOV DL,DI DEC DI CMP N,0H JNE LOP5 CMP DL,0H JE LOP9 LOP5:PUSH DX PUSH CX MOV CL,4H SHR DL,CL POP C

10、X CMP DL,9H JBE LOP6 ADD DL,7H LOP6:ADD DL,30H MOV AH,2 INT 21H MOV N,1H POP DX AND DX,0FH CMP DL,9H JBE LOP8 ADD DL,7H LOP8:ADD DL,30H MOV AH,2 INT 2

11、1H MOV DL,'H' MOV AH,2 INT 21H LOP9:LOOP LOP4 MOV N,0 MOV DI,OFFSET OUTCOME2ADD DI,10H MOV CX,11H LOP14: MOV DL,DI DEC DI CMP N,0H JNE LOP15 CMP DL,0H J

12、E LOP19 LOP15:PUSH DX PUSH CX MOV CL,4H SHR DL,CL POP CX CMP DL,9H JBE LOP16 ADD DL,7H LOP16:ADD DL,30H MOV AH,2 INT 21H MOV N,1H POP DX AND DX,0FH CM

13、P DL,9H JBE LOP18 ADD DL,7H LOP18:ADD DL,30H MOV AH,2 INT 21H MOV DL,'H' MOV AH,2 INT 21H LOP19:LOOP LOP14 MOV AH,4CH INT 21H CODE ENDS END START實(shí)驗(yàn)2 DAT

14、A SEGMENT TISHI1 DB 'Please enter the first number:','$' TISHI2 DB 'Please enter the second number:','$' JIA DB '+','$' JIAN DB '-','$&

15、#39; CHENG DB '*','$'CHU DB '/','$' DENG DB '=','$' YU DB '.','$' A DB 10 B DW 10 C DW 10000 F DW 0H NUM1 DW

16、60;0H NUM2 DW 0H N DB 0H N1 DB 4H DATA ENDS STACK1 SEGMENT STACK DW 30H DUP(0) STACK1 ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATA START:MOV AX,DATA  MOV DS,AX

17、60; MOV DX,OFFSET TISHI1  MOV AH,09H  INT 21H LOOP2:MOV AX,NUM1  MUL B MOV BX,AX  MOV AH,1  INT 21H  CMP AL,0DH  JE LOP1  MOV NUM1,BX  

18、MOV AH,0  SUB AL,30H  ADD NUM1,AX  JMP LOOP2  LOP1:MOV DL,0AH          輸出換行和回車 MOV AH,2  INT 21H  MOV DL,0DH  MOV AH,2  

19、INT 21HMOV DX,OFFSET TISHI2  MOV AH,09H  INT 21H LOOP1:MOV AX,NUM2MUL B  MOV BX,AX  MOV AH,1  INT 21H  CMP AL,0DH  JE LOP3  MOV NUM2,BX  MOV

20、 AH,0  SUB AL,30H  ADD NUM2,AX  JMP LOOP1 LOP3:MOV DL,0AH          輸出換行和回車   MOV AH,2  INT 21H  MOV DL,0DH  MOV AH,2  IN

21、T 21H  MOV N,0  MOV DX,NUM1 MOV F,DX  LOP6:MOV DX,0H   MOV AX,F   DIV B   PUSH DX   INC N   CMP AX,0H   JE LOP7 

22、60; MOV F,AX   JMP LOP6  LOP7:MOV CL,N   MOV CH,0  LOP16:POP DX   ADD DX,30H   MOV AH,2   INT 21H   LOOP LOP16  MOV DX,NUM2&#

23、160;MOV F,DX MOV N,0 MOV DX,OFFSET JIA  MOV AH,09H  INT 21H  LOOOP6:MOV DX,0H   MOV AX,FDIV B   PUSH DX   INC N CMP AX,0H   JE LOO

24、OP7   MOV F,AX   JMP LOOOP6  LOOOP7:MOV CL,N   MOV CH,0  LOOOP16:POP DX   ADD DX,30H   MOV AH,2   INT 21H LOOP LOOOP16  MOV D

25、X,OFFSET DENG  MOV AH,09H  INT 21H   MOV N,0 LOOP3:MOV AX,NUM1   ADD AX,NUM2   MOV F,AX  LOOP4:MOV DX,0H   MOV AX,F   DIV B   

26、;PUSH DX   INC N CMP AX,0H   JE LOOP5   MOV F,AX   JMP LOOP4  LOOP5:MOV CL,N   MOV CH,0  LOOP0:POP DX   ADD DX,30H   MOV

27、 AH,2   INT 21H   LOOP LOOP0 MOV DL,0AH          輸出換行和回車  MOV AH,2  INT 21H  MOV DL,0DH  MOV AH,2  INT 21H  MO

28、V N,0MOV DX,NUM1 MOV F,DX LOP61:MOV DX,0H   MOV AX,F   DIV B   PUSH DX   INC N CMP AX,0H   JE LOP71   MOV F,AX   JMP LOP

29、61  LOP71:MOV CL,N   MOV CH,0  LOP161:POP DX   ADD DX,30H   MOV AH,2   INT 21H   LOOP LOP161  MOV DX,NUM2 MOV F,DX MOV N,0 MOV

30、0;DX,OFFSET JIAN  MOV AH,09H  INT 21H LOOOP61:MOV DX,0H   MOV AX,F   DIV B   PUSH DX   INC N CMP AX,0H   JE LOOOP71   MOV F,A

31、X   JMP LOOOP61  LOOOP71:MOV CL,N   MOV CH,0  LOOOP161:POP DX   ADD DX,30H   MOV AH,2   INT 21H LOOP LOOOP161  MOV DX,OFFSET DENG  

32、;MOV AH,09H  INT 21H   MOV N,0MOV N,0  MOV AX,NUM1  SUB AX,NUM2   MOV F,AX  AND AX,10000000B   CMP AX,10000000B   JNE LOOP6   NEG 

33、F LOOP6:MOV DX,0   MOV AX,F   DIV B   PUSH DX   INC N CMP AX,0H   JE LOOP7   MOV F,AX   JMP LOOP6  LOOP7:MOV CL,N  

34、 MOV CH,0  LOOP16:POP DX   ADD DX,30H   MOV AH,2   INT 21H   LOOP LOOP16 MOV DL,0AH          輸出換行和回車   MOV AH,2

35、0;  INT 21H   MOV DL,0DH   MOV AH,2   INT 21H MOV N,0  MOV DX,NUM1 MOV F,DX LOP62:MOV DX,0H   MOV AX,F   DIV B   PUSH DX

36、   INC N  CMP AX,0H   JE LOP72   MOV F,AX   JMP LOP62  LOP72:MOV CL,N   MOV CH,0LOP162:POP DX   ADD DX,30H   MOV AH,2 &#

37、160; INT 21H   LOOP LOP162  MOV DX,NUM2 MOV F,DX MOV N,0 MOV DX,OFFSET CHENG  MOV AH,09H  INT 21H  LOOOP62:MOV DX,0H   MOV AX,F   DIV B

38、   PUSH DX   INC N CMP AX,0H   JE LOOOP72   MOV F,AX   JMP LOOOP62  LOOOP72:MOV CL,N   MOV CH,0  LOOOP162:POP DX   ADD D

39、X,30H   MOV AH,2   INT 21H  LOOP LOOOP162  MOV DX,OFFSET DENG  MOV AH,09H  INT 21H   MOV N,0   MOV AX,NUM1   MUL NUM2   

40、DIV C   PUSH DX   MOV F,AX   MOV N,0  LOOP8:MOV DX,0   MOV AX,F   DIV B    PUSH DX   INC N  CMP AX,0H   J

41、E LOOP9 MOV F,AX   JMP LOOP8  LOOP9:MOV CL,N   MOV CH,0  LOOP17:POP DX   ADD DX,30H   MOV AH,2   INT 21H   LOOP LOOP17   

42、;MOV N,0   POP F  LOOP10:MOV DX,0H   MOV AX,F   DIV B   PUSH DX   INC N  CMP AX,0H   JE LOOP11   MOV F,AX   JM

43、P LOOP10  LOOP11:MOV AL,N   CMP AL,4H   JE LOOP20   MOV AL,4H   SUB AL,N   MOV CL,AL   MOV CH,0 LOOP19:MOV DX,'0'   MOV AH

44、,2   INT 21H   LOOP LOOP19  LOOP20:MOV CL,N   MOV CH,0  LOOP18:POP DX   ADD DX,30H   MOV AH,2   INT 21H   LOOP LOOP18  M

45、OV DL,0AH          輸出換行和回車  MOV AH,2  INT 21H  MOV DL,0DH  MOV AH,2  INT 21HMOV N,0  MOV DX,NUM1 MOV F,DX LOP64:MOV DX,0H 

46、60; MOV AX,F   DIV B   PUSH DX   INC N  CMP AX,0H   JE LOP74   MOV F,AX   JMP LOP64  LOP74:MOV CL,N   MOV CH,0 

47、0;LOP164:POP DX   ADD DX,30H   MOV AH,2   INT 21H   LOOP LOP164  MOV DX,NUM2 MOV F,DX MOV N,0 MOV DX,OFFSET chu  MOV AH,09H  INT 21H

48、60;LOOOP64:MOV DX,0H   MOV AX,F   DIV B   PUSH DX   INC N  CMP AX,0H   JE LOOOP74   MOV F,AX   JMP LOOOP64  LOOOP74:MOV CL,N&

49、#160;  MOV CH,0  LOOOP164:POP DX   ADD DX,30H   MOV AH,2   INT 21H   LOOP LOOOP164   MOV DX,OFFSET DENG  MOV AH,09H  INT 21H MOV&#

50、160;N,0MOV AX,NUM1   MOV DX,0   DIV NUM2   PUSH DX   MOV F,AX   MOV N,0  LOOP15:MOV DX,0   MOV AX,F   DIV B   PUSH DX

51、60;  INC N  CMP AX,0H   JE LOOP12   MOV F,AX   JMP LOOP15  LOOP12:MOV CL,N   MOV CH,0  LOOP21:POP DX   ADD DX,30H   MOV 

52、AH,2   INT 21H   LOOP LOOP21   MOV DX,OFFSET YU  MOV AH,09H  INT 21H   POP F   MOV N,0  LOOP13:MOV DX,0   MOV AX,F  

53、0;DIV B   PUSH DX   INC N   CMP AX,0H   JE LOOP14   MOV F,AX   JMP LOOP13  LOOP14:MOV CL,N   MOV CH,0H  LOOP22:POP DX &#

54、160; ADD DX,30HMOV AH,2   INT 21H   LOOP LOOP22 MOV AH,4CH INT 21H CODES ENDS END START 實(shí)驗(yàn)五 輸入輸出程序設(shè)計(jì) 一、實(shí)驗(yàn)?zāi)康?1) 掌握輸入輸出程序的編寫方法。 2) 熟悉系統(tǒng)功能調(diào)用的方法。 3) 熟悉動(dòng)畫程序的編寫方法。 二、實(shí)驗(yàn)內(nèi)容 1)在CRT上每隔一秒連續(xù)顯示字符09。 編程提示 為了使輸出的字符之

55、間有空格,在每一個(gè)循環(huán)中輸出一個(gè)09的字符和一個(gè)空格。為了輸出09,置寄存器BL初值為0,每循環(huán)一次使其增量。為了保證輸出是十進(jìn)制,增量后用DAA調(diào)整指令。由于輸出為一位十進(jìn)制數(shù),用AND 0FH指令屏蔽高4位。 2)用系統(tǒng)功能調(diào)用將HELLO由鍵盤輸入,再從屏幕輸出*HELLO*。 3)編制在屏幕上畫線的子程序,調(diào)用該子程序畫一矩形。4)編制字母下落一行的子程序,調(diào)用該子程序使字母從屏幕頂部下落到底部。5)創(chuàng)建一磁盤文件,保存從鍵盤輸入的字符串。6)編寫程序用設(shè)置系統(tǒng)時(shí)間,首先從鍵盤以十進(jìn)制數(shù)形式輸入時(shí)間,然后修改系統(tǒng)時(shí)間,并重新以十進(jìn)制形式顯示時(shí)間。7)編寫程序?qū)⑵聊环指畛筛駹?,每一格涂?/p>

56、不同顏色,格數(shù)從鍵盤輸入。8)編寫程序在屏幕上顯示菜單,輸入相應(yīng)菜單的序號(hào)后,選種該菜單項(xiàng)。三、實(shí)驗(yàn)設(shè)備 PC機(jī)一臺(tái) 四、實(shí)驗(yàn)步驟 1) 按程序流程圖編制實(shí)驗(yàn)程序。 2) 輸入源程序。 3) 匯編、連接程序,執(zhí)行程序,檢查結(jié)果。 4) 程序的執(zhí)行可用DEBUG的G命令,也可用T命令單步跟蹤執(zhí)行。5、 源程序?qū)嶒?yàn)五 EXAM51 STACK SEGMENT STACK DB 1024 DUP(0)STACK ENDSCODE SEGMENT ASSUME CS:CODE,SS:STACKSTART: MOV BL, 0 LP: MOV DL, 20H MOV AH, 2 INT 21H MOV AL, BL ADD AL, 0 DAA AND AL, 0FH MOV BL, AL PUSH BX OR AL, 30H MOV DL, AL MOV AH, 2 INT 21H MOV BX, 3E8H LP2: MOV CX, 176H ;延時(shí)1ms LP1: PUSHF POPF LOOP LP1 DEC BX JNZ LP2 POP BX INC BL JMP LPCODE ENDS END START執(zhí)行程序EXAM51·EXE,屏幕上依次循環(huán)顯示一個(gè)數(shù)字一個(gè)空格:0    1 2 3 4 5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論