分支程序设计实验报告

上传人:cl****1 文档编号:506200109 上传时间:2023-01-26 格式:DOCX 页数:8 大小:292.14KB
返回 下载 相关 举报
分支程序设计实验报告_第1页
第1页 / 共8页
分支程序设计实验报告_第2页
第2页 / 共8页
分支程序设计实验报告_第3页
第3页 / 共8页
分支程序设计实验报告_第4页
第4页 / 共8页
分支程序设计实验报告_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《分支程序设计实验报告》由会员分享,可在线阅读,更多相关《分支程序设计实验报告(8页珍藏版)》请在金锄头文库上搜索。

1、实验二分支程序设计一、实验目的:1、学习分支程序的设计方法2、熟悉在PC机上建立、汇编、连接、调试和运行汇编语言程序的过程 二、实验环境:硬件环境旧M/PC及其兼容机软件环境操作系统DOS编辑程序EDIT或其他编辑程序汇编程序MASM.EXE连接程序LINK.EXE调试程序DEBUG.EXE三、实验内容:1、在屏幕上显示如下信息:1 Panda2 Cat3 Rabbit4 Pig5 EXIT (Please choose 1,2,3,4or 5)若输入1,显示“ I like panda ”后程序结束;若输入 2,显示“ I like cat ”后程 序结束;若输入3,显示“ I like r

2、abbit ”后程序结束;若输入4,显示“I don t like pig”后程序结束;若输入5,程序直接结束;若输入其它字符,显示“ You press an error key! ” 后程序结束。1)流程图开始选项用户输入YAl=1NAl=2YNI like catAl=3YI like rabbitYI like do notNAl=5NI like pandaAl=4N NYou press an error key1 r2)源程序DATA SEGMENTINFOR1 DB 0AH,0DH,1Panda:$”INFOR2 DB 0AH,0DH,2Cat:$”INFOR3 DB 0AH,

3、0DH,3Rabbit;$”INFOR4 DB 0AH,0DH,4pig:$”INFOR5 DB 0AH,0DH,5EXIT:$”INFOR6 DB 0AH,0DH,(please choose 1,2,3,4 or 5-):$INFOR7 DB 0AH,0DH,I like Panda:$”INFOR8 DB 0AH,0DH,I like Cat:$”INFOR9 DB 0AH,0DH,I like Rabbit;$”INFOR10 DB 0AH,0DH,I like pig:$INFOR11 DB 0AH,0DH,you press an error key!:$”DATA ENDS CO

4、DE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX,DATAMOV DS,AXMOV DX,OFFSET INFOR1MOV AH,09H INT 21HMOV DX,OFFSET INFOR2 MOV AH,09H INT 21HMOV DX,OFFSET INFOR3 MOV AH,09H INT 21HMOV DX,OFFSET INFOR4 MOV AH,09H INT 21HMOV DX,OFFSET INFOR5MOV AH,09H INT 21HMOV DX,OFFSET INFOR6 MOV AH,09H INT 21HMOV AH,0

5、1H INT 21H CMP AL,1 JE Panda CMP AL,2 JE Cat CMP AL,3 JE Rabbit CMP AL,4 JE Pig CMP AL,5 JE PEND JMP Other Panda:MOV DX,OFFSET INFOR7 MOV AH,09H INT 21H JMP PEND;数据段结束;代码段开始;段寻址;将data的数据存入;为ds赋值;返回变量INFOR1ax中段内偏移地址【运行后在屏幕上显示字符1-Panda:;执行九号功能调用;返回变量INFOR5段内偏移地址 【运行后在屏幕上显示字符 5EXIT:Cat:MOV DX,OFFSET IN

6、FOR8MOV AH,09HINT 21HJMP PENDRabbit:MOV DX,OFFSET INFOR9MOV AH,09HINT 21HJMP PENDPig:MOV DX,OFFSET INFOR10MOV AH,09HINT 21HJMP PENDOther:MOV DX,OFFSET INFOR11MOV AH,09HINT 21HJMP PENDPEND:MOV AH,4CHINT 21HCODE ENDSEND START回 sa3,4emulator screen (37x25 chars)e i 1-1pcRaPandaCat :Rabb i 二二段看: ioqs e

7、1, Dbit ;t;2,o remulator screen (35x25 chars)回 S312345(1Panda:Cat 1Rabbit;二二段冰choose 1.2.3j4 or 51 : 1Panda :clear screen2、从键盘输入一字符,判断该字符是小写字母、大写字母、数字或其它字符。若输入为小写字母,显示“You Input a Lowercase Letter ! ”;若输入为大写字母, 显示 “You Input a Uppercase Letter!”; 若输入为数字,显示 “ You Input a Digit!”; 若输入为其它字符,显示 “ You In

8、put Other Letter !”。1、编程指导数字0 9的ASCII码为30H 39H;大写字母的 ASCII码为41H 5AH ,小 写字母的ASCII码为61H 7AH。本题目将字符分为小写字母、大写字母、数字 及其它字符,根据键入字符的ASCII码值判断其所属类型,并显示相应的信息。 字符串显示使用功能号为09H的DOS功能调用,接收键盘输入的单个字符使用 功能号为01H的DOS功能调用。2、流程图及程序框图1)流程图2)源程序DATA SEGMENTINFOR1 DB 0AH,0DH,Please Press Any Key to input a letter:$”INFOR2

9、DB 0AH,0DH,You input a lowercase letter! $INFOR3 DB 0AH,0DH,You input a Uppercase letter! $INFOR4 DB 0AH,0DH,You input a Digit! $INFOR5 DB 0AH,0DH,You input Other letter! $DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA;显示信息“Please Press Any Key to input a letter”的指令序列START: MOV AX,DA TA以及接收从键盘输入一个字符的指令

10、序列MOV DS,AXINFOR1MOV DX,OFFSETMOV AH,09HINT 21HMOV AH,01HINT 21HCMP AL,0JB OTHER CMP AL,9 JBE DIGIT CMP AL,A JB OTHER CMP AL,Z JBE UPPER CMP AL,a JB OTHER CMP AL,z JBE LOWER JMP PEND LOWER:MOV DX,OFFSET INFOR2 MOV AH,09H INT 21H JMP PEND UPPER:MOV DX,OFFSET INFOR3 MOV AH,09H INT 21H JMP PEND DIGIT:M

11、OV DX,OFFSET INFOR4 MOV AH,09H INT 21H JMP PENDOTHER:MOV DX,OFFSET INFOR5 MOV AH,09H INT 21H;显示“You Input a Lowercase Letter!”的指令序列;注意执行完一个分支后应使程序跳出;显示You Input a Uppercase Letter”的指令序列;显示You Input a Digit!”的指令序列;显示You Input Other Letter! w 的指令序列PEND:MOV AH,4CHINT 21HCODE ENDSEND START四、心得 通过这次上机实验,我掌握了分支程序额设计方法,宏定义及宏调用的基本方法,了解了小写字母和大写字母的 ASCII码表示及其转换方法,了解了数字及 其他字符的ASCII码表示方法,进一步掌握了调试工具的使用方法。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号