没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
武汉理工大学《汇编语言程序设计》课程设计说明书
闰年判断程序的设计
1 需求说明
1.1 闰年的定义是年份是整百数的必须是 400 的倍数才是闰年或者是年份能
被 4 整除但不能被 100 整除的也是闰年。
1.2 数据由用户从键盘输入,其相关数据的定义为:输入的年份是四位数,
即其范围是 1000~9999。如果输入的数据不满足条件应有相应的提示
重复输入。
1.3 本演示程序可以对不同的满足数据定义的年份进行判断是否是闰年,并
以输入字母“s”结束演示。
1.4 演示程序以用户和计算机对话的方式执行,即在计算机的终端上的“信息
提示”下进行相关的数据的输入和操作。
2 开发平台
Windows xp
VisualASM 汇编语言可视化继承开发工具
3 设计说明
3.1 本程序的功能是对输入的数据进行判断是否是满足输入条件,若是满足条
件的四位数据,则取其为年份进行闰年判断。
3.2 初步的用户界面设计如下:
please input the number between 1000~9999:
input:
如果输入的数据是满足条件的四位数字,则根据其年份进行相应的判断
输出如下界面:
the year is leap year!
或者
the year is not leap year!
如果输入的数据是不满足条件的,例如是五位或者比四位低,或者首位是
0,或者输入的不是 0~9 的数字而是其他字符,那么输出的界面如下所示:
please input the number between 1000~9999:
1
武汉理工大学《汇编语言程序设计》课程设计说明书
input:
3.3 本程序包含 5 个功能模块:
3.3.1 验证第一个从键盘输入的数据是 1~9 模块
3.2.2 验证从键盘输入的数据是三个 0~9 模块
3.2.3 将输入的四个数字建立成四位数年份(十进制)模块
3.2.4 对输入的年份进行闰年判断算法模块
3.2.5 根据判断结果输出相应的结果模块
3.3 各模块之间的调用关系
4 详细的算法描述
4.1 验证第一个从键盘输入的数据是 1~9:
1 的 ASCⅡ 是 31h,9 的 ASCⅡ 是 39h,如果从键盘输入的字符的 ASCⅡ 的值小
于 31h,大于 39h,会提示重新输入。
算法如下:
CMP AL,73h
JZ exit
CMP AL,31h
JB lj1 ;当输入的比 1 小的时候跳到 lj1
2
判断闰年算法模块
建立四位数年份模块
结果输出模块
输入第一个数模块
输入第二,三,四个数模块
武汉理工大学《汇编语言程序设计》课程设计说明书
CMP AL,39h
JA lj1 ;当输入的比 1 小的时候跳到 lj1
SUB AL,30h
MOV [DI],AL
JMP lj2
4.2 剩下输入的是三个 1~9 的数字,并以回车结束
如果输入的不是三个 1~9 的数字,根据 0 的 ASCⅡ 是 30h,9 的
ASCⅡ 是 39h , 如果从键 盘输 入 的 字符的 ASCⅡ 的值 小 于 31h,大于
39h,会提示重新输入。当输完
4.3 主程序和其他伪码算法
5 源程序及执行结果
5.1 源程序
data SEGMENT
put DB 'input:',0ah,0dh,'$'
number DB 4 DUP(?) ;数据缓冲区定义
enter DB 0ah,0dh,'$'
noleap DB 'the year is not leap year!$'
leap DB 'the year is leap year!$'
tip DB 'please input the number between 1000~9999:$'
data ENDS
code SEGMENT
ASSUME CS:code,DS:data
begin:
MOV AX,data
MOV DS,AX
lj1:LEA DX,enter ;换行
MOV AH,09h
INT 21h
LEA DX,tip ;显示输入信息提示
MOV AH,09h
INT 21h
LEA DX,enter ;换行
MOV AH,09h
INT 21h
LEA DX,put ;显示输入信息提示
MOV AH,09h
INT 21h
LEA DI,number ;数据缓冲区定义
3
剩余10页未读,继续阅读
资源评论
洁洁132
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Music-Player +PlayerActivity+ rockplayer+ SeeJoPlayer 播放器JAVA源码
- vscode-1.46.0.tar源码文件
- 最近很火植物大战僵尸杂交版2.08苹果+安卓+PC+防闪退工具V2+修改工具+高清工具+通关存档整合包更新
- 超级好用的截图工具PixPin,可录制Gif图
- Screenshot_2024-05-21-17-06-42-64_2332cb9b27b851b548ba47a91682926c.jpg
- 毕业设计参考 - 基于树莓派、OpenCV及Python的人脸识别
- node-v18.20.2-linux-arm64
- 222222222222
- 16张相机标定图片,可复现本文畸变矫正
- dbeaver-ce-23.3.1-x86_64-setup.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功