- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
东北大学 自动化 张鹏 977243628@
实验四 分支结构程序设计实验_张鹏
一、实验目的
1.掌握分支结构程序设计的基本设计方法;
2.掌握条件转移指令和无条件转移指令的使用方法;
3.掌握指令对标志寄存器中各标志位的影响情况;
4.掌握多分支结构程序设计的三种方法:树型结构法、地址常数表法和指令常数表法。
二、实验要求
1.学会使用DEBUG的T命令,跟踪检查指令对标志位的影响情况;
2.学会使用DEBUG中的P命令,对INT指令的跟踪方法;
3.学会利用设置断点调试程序的方法;
4.了解大写、小写字母及数字在计算机内的表示方法及转换方法。
三、实验内容
1.编写程序,已知在DATA开始的内存单元中,连续存放着三个一位十六进制数,找出其中最大数及最小数,存放在指定的内存单元中。
2.编写程序,已知在DATA开始的内存单元中,连续存放着三个带符号数据,判断三个数是否同号,若同时为正,则在屏幕上显示“+”号,若同时为负,则在屏幕上显示“-”号,否则显示“*”号。
3.编写程序,从键盘接收字符,判断该字符是否为字母、数字或非字母也非数字类字符。若为字母,则在屏幕上显示“L”;若为数字,则在屏幕上显示“D”;若为非字母也非数字,则在屏幕上显示“O”。
4.编写程序,已知DATAX和DATAY单元各存放一个带符号字节数据,从键盘上接收加(+)、减(-)、乘(*)或除(/)号,完成相应运算,结果在屏幕上显示出来。
⑴ 当输入“+”号时,计算X+Y,并以十六进制形式显示出来;
⑵ 当输入“-”号时,计算X-Y,并以十六进制形式显示出来;
⑶ 当输入“*”号时,计算X*Y,并以十六进制形式显示出来;
⑷ 当输入“/”号时,计算X/Y,并以十六进制形式显示出来;
5.编写程序,从键盘输入若干个任意字符,如果是小写字母a~z之间的字符,请将它们转换成相应的大写字母,若为其它字符,则保持不变,将转换后的新字符保存在指定的存储单元中。
四、源程序
4.1:
DSEG SEGMENT
HTAB DB '0123456789ABCDEF'
MIN DB 0
MAX DB 0
DATA00 DB 37H
DATA DB 3AH
DATA1 DB 0
DATA2 DB 0
DATA3 DB 0
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG
START: MOV AX,DSEG
MOV DS,AX
MOV AH,01H ;第1个数
INT 21H
CMP AL,DATA
JA CASE00
SUB AL,30H
JMP CASE000
CASE00: SUB AL,DATA00
CASE000:MOV DATA1,AL
MOV DL,','
MOV AH,02H
INT 21H
MOV AH,01H ;第2个数
INT 21H
CMP AL,DATA
JA CASE01
SUB AL,30H
JMP CASE011
CASE01: SUB AL,DATA00
CASE011:MOV DATA2,AL
MOV DL,','
MOV AH,02H
INT 21H
MOV AH,01H ;第3个数
INT 21H
CMP AL,DATA
JA CASE02
SUB AL,30H
JMP CASE022
CASE02: SUB AL,DATA00
CASE022:MOV DATA3,AL
MOV DL,';'
MOV AH,02H
INT 21H
MOV CL,DATA1
MOV CH,DATA2
CMP CL,CH
JBE CASE1 ;DATA1小于等于DATA2
JA CASE2 ;DATA1大于DATA2
CASE1: MOV DH,DATA3
CMP CL,DH
JBE CASE11 ;DATA1小于等于DATA3
JA CASE12 ;DATA1大于DATA3
CASE11: MOV MIN,CL
CMP CH,DH
JBE CASE111 ;DATA2小于等于DATA3
JA CASE112 ;DATA2大于DATA3
CASE12: MOV MIN,DH
MOV MAX,CH
JMP SHOW
CASE111:MOV MAX,DH
JMP SHOW
CASE112:MOV MAX,CH
JMP SHOW
CASE2: CMP CH,DH
JBE CASE21 ;DATA2小于等
文档评论(0)