汇编实验报告.doc_第1页
汇编实验报告.doc_第2页
汇编实验报告.doc_第3页
已阅读5页,还剩42页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、汇编实验报告实验三 算术运算与代码转换程序设计 一、实验目的1掌握算术运算程序的设计方法。2掌握代码转换程序的设计方法。3进一步掌握各种程序构造。4纯熟掌握和使用用 DEBUG 调试程序。二、实验内容1 1 编制两个多字节整数加法和减法程序,并将结果按十六进制形式显示在屏幕上。2编制程序实现二进制定点数与十进制数的 ASCII 码串之间转换,并将结果显示在屏幕上。3编写程序计算从键盘输入两个不超过四位的十进制数的和、差、积、商,并以十进制形式输出。4写程序把从键盘输入的四位十六进制数转换为压缩的 BCD 码,并显示输出。5编写一通用过程用来将十进制数(从键盘输入)转换为 P(从键盘输入)进制数

2、。三、实验设备PC 机一台 四、实验步骤1) 按程序流程图编制实验程序。2) 输入程序。3) 汇编、连接程序,执行程序,检查结果。4) 程序的执行可用 DEBUG 的 G 命令,也可用 T 命令单步跟踪执行。5) 用 D 命令检查执行结果。六、程序 实验一 DATA SEGMENTNUM1 DB 22H,33H,44H,55H,66H,77HNUM1L DB 6HNUM2 DB 22H,22H,22H,22HNUM2L DB 4HOUTE1 DB 10H DUP(0)OUTE2 DB 10H DUP(0)N DB 0HDATA ENDSSTACK1 SEGMENT PARA STACKDW 2

3、0H DUP(0)STACK1 ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK1START:MOV A_,DATAMOV DS,A_MOV CH,0MOV SI,OFFSET NUM1MOV DI,OFFSET NUM2MOV AH,NUM1LMOV AL,NUM2LCMP AH,ALJAE CHA_CHG SI,DI_CHG AH,ALCHA:SUB AH,ALMOV CL,ALCLCMOV B_,OFFSET OUTE1 LOP1:MOV AL,DIPUSH C_MOV CL,SIADC CL,ALMOV B_,CLINC B_INC SII

4、NC DIPOP C_LOOP LOP1MOV CL,AHJC_Z LOP3LOP2:PUSH C_MOV CL, BYTE PTR SIADC CL,0MOV B_,CLPOP C_INC B_INC SILOOP LOP2LOP3:MOV CH,0MOV SI,OFFSET NUM1MOV DI,OFFSET NUM2MOV AH,NUM1LMOV AL,NUM2LCMP AH,ALJAE CHA1_CHG SI,DI_CHG AH,ALCHA1:SUB AH,ALMOV CL,ALCLCMOV B_,OFFSET OUTE2LOP11:MOV AL,DIPUSH C_MOV CL,SIS

5、BB CL,ALMOV B_,CLINC B_INC SIINC DIPOP C_LOOP LOP11MOV CL,AH JC_Z LOP7LOP21:PUSH C_MOV CL, BYTE PTR SISBB CL,0MOV B_,CLPOP C_INC B_INC SILOOP LOP21LOP7:MOV DI,OFFSET OUTE1ADD DI,10HMOV C_,11HLOP4: MOV DL,DIDEC DICMP N,0HJNE LOP5CMP DL,0HJE LOP9LOP5:PUSH D_PUSH C_MOV CL,4HSHR DL,CLPOP C_CMP DL,9HJBE

6、LOP6ADD DL,7HLOP6:ADD DL,30HMOV AH,2INT 21HMOV N,1HPOP D_AND D_,0FHCMP DL,9HJBE LOP8ADD DL,7HLOP8:ADD DL,30HMOV AH,2INT 21HMOV DL,HMOV AH,2INT 21HLOP9:LOOP LOP4MOV N,0MOV DI,OFFSET OUTE2 ADD DI,10HMOV C_,11HLOP14: MOV DL,DIDEC DICMP N,0HJNE LOP15CMP DL,0HJE LOP19LOP15:PUSH D_PUSH C_MOV CL,4HSHR DL,C

7、LPOP C_CMP DL,9HJBE LOP16ADD DL,7HLOP16:ADD DL,30HMOV AH,2INT 21HMOV N,1HPOP D_AND D_,0FHCMP DL,9HJBE LOP18ADD DL,7HLOP18:ADD DL,30HMOV AH,2INT 21HMOV DL,HMOV AH,2INT 21HLOP19:LOOP LOP14MOV AH,4CHINT 21HCODE ENDSEND START验 实验 2DATA SEGMENTTISHI1 DB Please enter the first number:,$TISHI2 DB Please en

8、ter the second number:,$JIA DB +,$JIAN DB -,$CHENG DB _,$ CHU DB /,$DENG DB =,$YU DB .,$A DB 10B DW 10C DW 10000F DW 0HNUM1 DW 0HNUM2 DW 0HN DB 0HN1 DB 4HDATA ENDSSTACK1 SEGMENT STACKDW 30H DUP(0)STACK1 ENDSCODES SEGMENTASSUME CS:CODES,DS:DATASTART:MOV A_,DATAMOV DS,A_MOV D_,OFFSET TISHI1MOV AH,09HI

9、NT 21HLOOP2:MOV A_,NUM1MUL BMOV B_,A_MOV AH,1INT 21HCMP AL,0DHJE LOP1MOV NUM1,B_MOV AH,0SUB AL,30HADD NUM1,A_JMP LOOP2LOP1:MOV DL,0AH输出换行和回车MOV AH,2INT 21HMOV DL,0DHMOV AH,2INT 21H MOV D_,OFFSET TISHI2MOV AH,09HINT 21HLOOP1:MOV A_,NUM2 MUL BMOV B_,A_MOV AH,1INT 21HCMP AL,0DHJE LOP3MOV NUM2,B_MOV AH,

10、0SUB AL,30HADD NUM2,A_JMP LOOP1LOP3:MOV DL,0AH输出换行和回车MOV AH,2INT 21HMOV DL,0DHMOV AH,2INT 21HMOV N,0MOV D_,NUM1MOV F,D_LOP6:MOV D_,0HMOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOP7MOV F,A_JMP LOP6LOP7:MOV CL,NMOV CH,0LOP16:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOP16MOV D_,NUM2MOV F,D_MOV N,0MOV D_,OFFSET JI

11、AMOV AH,09HINT 21HLOOOP6:MOV D_,0HMOV A_,F DIV BPUSH D_INC NCMP A_,0HJE LOOOP7MOV F,A_JMP LOOOP6LOOOP7:MOV CL,NMOV CH,0LOOOP16:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOOOP16MOV D_,OFFSET DENGMOV AH,09HINT 21HMOV N,0LOOP3:MOV A_,NUM1ADD A_,NUM2MOV F,A_LOOP4:MOV D_,0HMOV A_,FDIV BPUSH D_INC NCMP A_,0HJE

12、LOOP5MOV F,A_JMP LOOP4LOOP5:MOV CL,NMOV CH,0LOOP0:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOOP0MOV DL,0AH输出换行和回车MOV AH,2INT 21HMOV DL,0DHMOV AH,2INT 21HMOV N,0 MOV D_,NUM1MOV F,D_LOP61:MOV D_,0HMOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOP71MOV F,A_JMP LOP61LOP71:MOV CL,NMOV CH,0LOP161:POP D_ADD D_,30HMOV AH

13、,2INT 21HLOOP LOP161MOV D_,NUM2MOV F,D_MOV N,0MOV D_,OFFSET JIANMOV AH,09HINT 21HLOOOP61:MOV D_,0HMOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOOOP71MOV F,A_JMP LOOOP61LOOOP71:MOV CL,NMOV CH,0LOOOP161:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOOOP161MOV D_,OFFSET DENGMOV AH,09HINT 21HMOV N,0 MOV N,0MOV A_,NUM1S

14、UB A_,NUM2MOV F,A_AND A_,10000000BCMP A_,10000000BJNE LOOP6NEG FLOOP6:MOV D_,0MOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOOP7MOV F,A_JMP LOOP6LOOP7:MOV CL,NMOV CH,0LOOP16:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOOP16MOV DL,0AH输出换行和回车MOV AH,2INT 21HMOV DL,0DHMOV AH,2INT 21HMOV N,0MOV D_,NUM1MOV F,D_LOP62:MOV

15、 D_,0HMOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOP72MOV F,A_JMP LOP62LOP72:MOV CL,NMOV CH,0 LOP162:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOP162MOV D_,NUM2MOV F,D_MOV N,0MOV D_,OFFSET CHENGMOV AH,09HINT 21HLOOOP62:MOV D_,0HMOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOOOP72MOV F,A_JMP LOOOP62LOOOP72:MOV CL,NMOV C

16、H,0LOOOP162:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOOOP162MOV D_,OFFSET DENGMOV AH,09HINT 21HMOV N,0MOV A_,NUM1MUL NUM2DIV CPUSH D_MOV F,A_MOV N,0LOOP8:MOV D_,0MOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOOP9MOV F,A_JMP LOOP8LOOP9:MOV CL,NMOV CH,0LOOP17:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOOP17MOV N,0POP F

17、LOOP10:MOV D_,0HMOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOOP11MOV F,A_JMP LOOP10LOOP11:MOV AL,NCMP AL,4HJE LOOP20MOV AL,4HSUB AL,NMOV CL,ALMOV CH,0LOOP19:MOV D_,0MOV AH,2INT 21HLOOP LOOP19LOOP20:MOV CL,NMOV CH,0LOOP18:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOOP18MOV DL,0AH输出换行和回车MOV AH,2INT 21HMOV DL,0DHM

18、OV AH,2INT 21H MOV N,0MOV D_,NUM1MOV F,D_LOP64:MOV D_,0HMOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOP74MOV F,A_JMP LOP64LOP74:MOV CL,NMOV CH,0LOP164:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOP164MOV D_,NUM2MOV F,D_MOV N,0MOV D_,OFFSET chuMOV AH,09HINT 21HLOOOP64:MOV D_,0HMOV A_,FDIV BPUSH D_INC NCMP A_,0HJE

19、LOOOP74MOV F,A_JMP LOOOP64LOOOP74:MOV CL,NMOV CH,0LOOOP164:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOOOP164MOV D_,OFFSET DENGMOV AH,09HINT 21HMOV N,0 MOV A_,NUM1MOV D_,0DIV NUM2PUSH D_MOV F,A_MOV N,0LOOP15:MOV D_,0MOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOOP12MOV F,A_JMP LOOP15LOOP12:MOV CL,NMOV CH,0LOOP21

20、:POP D_ADD D_,30HMOV AH,2INT 21HLOOP LOOP21MOV D_,OFFSET YUMOV AH,09HINT 21HPOP FMOV N,0LOOP13:MOV D_,0MOV A_,FDIV BPUSH D_INC NCMP A_,0HJE LOOP14MOV F,A_JMP LOOP13LOOP14:MOV CL,NMOV CH,0HLOOP22:POP D_ADD D_,30H MOV AH,2INT 21HLOOP LOOP22MOV AH,4CHINT 21HCODES ENDSEND START实验五 输入输出程序设计一、实验目的1) 掌握输入输

21、出程序的编写方法。2) 熟悉系统功能调用的方法。3) 熟悉动画程序的编写方法。二、实验内容1在 CRT 上每隔一秒连续显示字符 09。编程提示为了使输出的字符之间有空格,在每一个循环中输出一个 09 的字符和一个空格。为了输出 09,置存放器 BL 初值为 0,每循环一次使其增量。为了保证输出是十进制,增量后用DAA调整指令。由于输出为一位十进制数,用AND0FH指令屏蔽高 4 位。2用系统功能调用将‘HELLO由键盘输入,再从屏幕输出‘_HELLO_。3编制在屏幕上画线的子程序,调用该子程序画一矩形。4编制字母下落一行的子程序,调用该子程序使字母从屏幕顶部下落到底部。

22、5创立一磁盘文件,保存从键盘输入的字符串。6编写程序用设置系统时间,首先从键盘以十进制数形式输入时间,然后修改系统时间,并重新以十进制形式显示时间。7编写程序将屏幕分割成格状,每一格涂上不同颜色,格数从键盘输入。8编写程序在屏幕上显示菜单,输入相应菜单的序号后,选种该菜单项。三、实验设备PC 机一台四、实验步骤1) 按程序流程图编制实验程序。2) 输入程序。3) 汇编、连接程序,执行程序,检查结果。4) 程序的执行可用 DEBUG 的 G 命令,也可用 T 命令单步跟踪执行。五、 程序 实验五E_AM51STACKSEGMENTSTACKDB1024DUP0STACKENDS CODESEGM

23、ENTASSUMECS:CODE,SS:STACK START:MOVBL,0LP:MOVDL,20HMOVAH,2INT21HMOVAL,BLADDAL,0DAAANDAL,0FHMOVBL,ALPUSHB_ORAL,30HMOVDL,ALMOVAH,2INT21HMOVB_,3E8HLP2:MOVC_,176H;延时 1msLP1:PUSHFPOPFLOOPLP1DECB_JNZLP2POPB_INCBLJMPLP CODEENDSENDSTART 执行程序 E_AM51·E_E,屏幕上依次循环显示一个数字一个空格:0123456789. 实验五E_AM5-2STACKSEG

24、MENTSTACKDB1024DUP0STACKENDS DATASEGMENT BUFFDB6,7DUP?,‘$ DATAENDS INPUTMACROBUFEMOVD_,OFFSETBUFEMOVAH,0AHINT21HENDM PUTCHAR MACROCHARMOVDL,CHARMOVAH,02HINT21HENDM CODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACK START:MOVA_, DATAMOVDS, A_INPUTBUFF;读取字符串BUFFPUTCHAR0DHPUTCHAR0AH;光标另起一行MOVC_, 0003H NE_

25、T:PUTCHAR2AHLOOPNE_TMOVCL, BUFF+1SUBCH, CHMOVB_, OFFSETBUFF+2 BEGIN:MOVAL, B_PUTCHARALINCB_LOOPBEGINMOVC_, 0003H NE_T1:PUTCHAR2AHLOOPNE_T1 MOVAH, 4CHINT21H CODEENDSENDSTART 执行程序 E_AM52·E_E,输入 HELLO屏幕上显示结果:_HELLO _实验五E_AM5-5NAMEE_AM6SSTACKSEGMENTSTACK stackDB1024 DUP?SSTACKENDSDATASEGMENTASKNAMEDB0DH,0AH,Enter theDBdest file name:$ASKCONTDB0DH,0AH,Enter the stringDBas file content:0dh,0ah,$FILEBUFDB62,63DUP?HANDDDW?MSGMERDB0DH,0AH,0AHDBDirectory full,0D

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论