汇编语言上机实验四2015李中_第1页
汇编语言上机实验四2015李中_第2页
汇编语言上机实验四2015李中_第3页
汇编语言上机实验四2015李中_第4页
汇编语言上机实验四2015李中_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

实验报告课 程:汇编语言程序设计专业班级:计算机科学与技术学 号:姓 名:李中实验四 分支结构程序设计实验一、 实验目的1、 掌握分支结构程序设计的基本设计方法2、 掌握条件转移指令和无条件转移指令的使用方法3、 掌握指令对标志寄存器中个标志位的影响情况4、 掌握多分支结构程序设计的方法,树型结构法和地址常数表法二、实验要求1、学会使用DEBUG中的T命令,跟踪执行程序2、学会使用DEBUG中的P命令对INT指令的跟踪方法3、学会利用设置断点调试程序的方法三、实验内容1、编写程序。从键盘接收字符,判断该字符是否为字母、数字或非字母也非数字类字符。若为字母,则在屏幕上显示“L”;若为数字,则在屏幕上显示“D”;若为非字母也为非数字,则在屏幕上显示“O”。2、编写程序。已知DATAX和DATAY单元各存放一个带符号字节数据,从键盘上接受加(+)、减(-)、乘(*)或除(/)号,完成相应运算,结果在屏幕上显示出来。(1)当输入“+”号时,计算X+Y,并以十六进制形式显示出来;(2)当输入“-”号时,计算X-Y,并以十六进制形式显示出来(3)当输入“*”号时,计算X*Y,并以十六进制形式显示出来(4)当输入“/”号时,计算X/Y,并以十六进制形式显示出来3、编写程序。从键盘输入若干个任意字符,如果是小写字母az之间的字符,请将它们转换成相应的大写字母;若为其他字符,则保持不变,将转换后的新字符保存在指定的存储单元中。四、解题思路首先将问题进行情况大致分类,逐一进行思考并编写程序。然后进行汇总,找到链接方式,最后编写程序。五、编程实现1、DSEG SEGMENTDSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV AH,01H;输入字符INT 21HMOV BL,30HCMP AL,BLJAE ABZJMP OTHER ;小于30H,为其他字符ABZ:MOV BL,39HCMP BL,ALJAE NUM ;30H和39H之间,为数字MOV BL,41HCMP AL,BLJAE ABBA JMP OTHER ;大于39H却小于41H,为其他字符ABBA: MOV BL,5AHCMP BL,ALJAE LETTER ;在a和z之间,为字母MOV BL,61HCMP AL,61HJAE ABSA JMP OTHER ;大于z,小于A,为其他字符ABSA:MOV BL,7AHCMP BL,ALJAE LETTER ;在A和Z之间,为字母JMP OTHER;大于Z,为其他字符LETTER:MOVDL,LJMP END1NUM:MOV DL,DJMP END1OTHER:MOV DL,OJMP END1END1:MOV AH,02HINT 21HMOV AH,4CHINT 21HCSEG ENDS END START编辑:汇编:链接:运行:调试:T命令和P命令结合使用:2. DSEG SEGMENTDATAXDB4DATAY DB -2HTABDBABCDEFDSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV CH,DATAXMOV CL,DATAYMOV AH,01H;输入字符INT 21HMOV BH,+CMP BH,ALJE PADDMOVBH,-CMP BH,ALJE PSUBMOV BH,*CMP BH,ALJE PMULMOV BBH,/CMP BH,ALJE PDIVMOV DL,ALJMP PRINTPADD:ADD CH,CLMOV DL,CHJMP PRINTPSUB:SUB CH,CLMOV DL,CHJMP PRINTPMUL:MOV AL,CHIMUL CLMOV DL,ALJMP PRINTPDIV:XOR AX,AXMOV AL,CHIDIV CLMOV DL,ALJMP PRINTPRINT:MOV AL,DL ;运算结果在DL中,复制到AL中MOV CH,DL ;运算结果复制到CH中MOV CL,4 SHR AL,CL ;低4位移走,剩下高4位LEA BX,HTABXLAT MOV DL,AL ;输出高4位MOV AH,02HINT 21HAND CH,0FH ;留下低4位,掩码MOV AL,CHXLAT MOV DL,AL ;输出低4位MOV AH,02HINT 21HMOV DL,H ;输出HMOV AH,02HINT 21HMOV AH,4CHINT 21HCSEG ENDS END START编辑:汇编:链接:运行:调试:T命令和P命令结合使用:3、DSEG SEGMENTRLT DB9 DUP (?)DSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV DI,0MOV CH,10MOV CL,1INPUT:CMP CH,CLJE END1 MOV AH,01H;输入字符INT 21HMOV BL,61HCMP AL,BLJAE ABSADEC CHJMP INPUTABSA:MOV BL,7AHCMP BL,ALJAE CHANGEDEC CHJMP INPUTCHANGE:SUBAL,20HJMP SAVESAVE:MOV RLTDI,ALINC DIDEC CHJMP INPUT END1:MOV AH,4CHINT 21HCSEG ENDS END START编辑:汇编:链接:运行:调试:T命令和P命令结合使用六、实验总结1、每一种情况符合的条件下,将继续执行,而不是直接跳到程序的末尾。因为这个问题,我耽误了好长时间,不断的调试。实验课上,老师的提醒,让我恍然大悟,终于解决了这个问题。2、在使用DEBUG调试工具是,T命令单步跟踪执行,遇到调用程序时,会跳转到子程序或系统程序,

温馨提示

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

评论

0/150

提交评论