- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编大作业(四则运算器含代码)
汇
编
程
序
大
作
业
云南大学软件学院实验报告
姓名 年级 班级 学号 专业 序号 实验
名称 实验八 汇编程序综合设计实验(四则运算器) 成绩 指导教师 (签名):
实验内容:
1.设计一个功能完善的四则运算器:
①程序有友好的运行界面;
②可以方便的输入输出2,10,16进制数据(要求可以处理4位的数据);
③可以方便的对数据进行四则运算;
④要求程序能够处理基本的错误信息;
⑤程序要求菜单控制;
⑥其他
程序简介:
该程序采用了主程序、子程序、宏相结合的编写方式,通过主程序调用了加、减、乘、除的子程序,在这四个子程序中有分别调用了二、十、十六进制输入输出、进制间转化的子程序。在数值转化为ASCII码的部分,定义了宏进行调整输出。
程序实现了16位的二进制、4位的十进制、4位的十六进制的加、减、乘、除运算,并可以通过用户的选择将其转化为其他相应的进制。其中乘法运算的进制转化功能尚不完善,当运算结果超过4位时不能正确的将结果进行输出并进行进制转化。
子过程:
addition:加法部分
subtraction:减法部分
multiplication:乘法部分
division:除法部分
b_in:二进制输入
hd_in:十六进制、十进制输入
b_out:二进制输出
btod:二进制转化十进制并输出
both:二进制转化十六进制并输出
宏:
btth:将数值转化为ASCII码保存
算法说明:
二进制计算时,要求输入0和1,从高到低为输入,将先输进的数*2+后输入的数,保存到寄存器中,如 1011则按((1*2+0)*2+1)*2+1
十进制计算时,要求输入0-9的整数,从高到低输入,将先输进的数*10+后输进的数,保存到寄存器中,如9817 则按((9*10+8)*10+1)*10+7
十进制计算时,要求输入0-F的整数,从高到低输入,将先输进的数*10H+后输进的数,保存到寄存器中,如AD17 则按((A*10H+D)*10H+1)*10H+7
通过add、sub、mul、div等汇编指令进行计算。
二进制输出,从高位到低位按位依次保存到dl中,加30h后输出
十进制输出,将结果分别除以10000、(上一步余数除)1000、(上一步余数除)100、(上一步余数除)10将商分别加30h后输出,将最后的余数加上30h后输出
十六进制输出,从高到低每四位依次输出与9比较,大于9加37h调整,小于9加30h调整
程序流程及实验结果:
主程序部分:
提示用户进行运算符号的选择,并进行子程序部分的调用
四则运算部分流程:
四则运算的加、减、乘、除四部分子程序的流程大致相同,此处采用同一个流程图表示,该部分提示用户进行进制选择,跳转的相应位置并进行相应的运算,调用输入输出子程序,对结果进行进制转化
二进制输入流程:
该部分进行二进制数的输入,通过移位将先输入的数保存到高位,后输入的数保存到低位,将最终结果保存到bx中
二进制输出:
该部分将运算结果以2进制的形式输出,通过加30h将数值转化为ASCII码输出
十、十六进制数的输入
该部分实现十及十六进制数的输入,将最终结果保存到bx中;
二进制转十进制并输出
该部分通过将得到的二进制数求商取余的方式将最高位的取到商中并输出;
二进制转十六进制:
该部分通过移位的方式将二进制数转化为16进制输出,其中判断了所输出值与9的大小关系,大于9则加37h调整,小于9则加30h调整
加法部分:
二进制加法,并将结果转化为10进制
二进制加法,并将结果转化为16进制:
十进制加法,并将结果转化为二进制:
十进制加法,并将结果转化为16进制:
十六进制加法,并将结果转化为二进制:
十六进制加法,并将结果转化为十进制
减法部分:
二进制减法,并将结果转化为十进制输出:
二进制减法并将结果转化为十六进制输出:
十进制减法,并将结果转化为二进制输出:
十进制减法,并将结果转化为十六进制输出:
十六进制减法,并将结果转化为二进制输出:
十六进制减法,并将结果转化为10进制输出:
乘法部分:
二进制乘法,并结果转化为10进制输出:
二进制乘法并将结果转化为16进制输出:
十进制乘法并将结果转化为二进制输出
十进制乘法,并将结果转化为16进制输出:
十六进制乘法,并将结果转化为二进制输出:
十六进制乘法,并将结果转化为十进制输出:
除法部分:
二进制除法,并将结果转化为十进制输出:
二进制除法,并将结果转化为16进制输出:
十进制除法,并将结果转化为二进制输出:
十进制除法,并将结果转化为16进制输出:
十六进制除法,并将结果转化为二进制输出:
十六进制除法,并将结果转化为10进制输出:
代码:
d
您可能关注的文档
- 水溶性聚合物对乳液聚合体系的影响——大学毕业论文.docx
- 水晶之恋广告策划书完结版.doc
- 水溶液中的离子平衡3-1.ppt
- 水电站地下厂房1、2层开挖方案.doc
- 水汽-云-降水(大气科学导论-张苏平).ppt
- 水电紊乱J8.ppt
- 水杯的人机工程学.ppt
- 水电站自动化答案华科版.doc
- 水滴系列2016_2017九年级历史下册第13课动荡的中东地区课件3.ppt
- 水磨石课程设计书完结.doc
- DB35_T 563-2021连城白鸭 品种.docx
- “双碳”目标下工业厂区供配电设计探讨.pdf
- 某项目供配电设计分析.pdf
- 高铁对欠发达地区可达性影响及空间发展策略研究——以兰新高铁为例.pdf
- DB35T 1974-2021生漆漆器中可迁移元素锑、钡、铅、镉、铬的测定.docx
- 经济集聚能否促进黄河流域经济高质量增长与生态保护的协同发展.pdf
- DB35T1711-2017 食品质量安全追溯码编码技术规范.docx
- DB3502T 045.2-2019 厦门特色美食制作规程 第2部分:海蛎煎.docx
- 上肢康复训练轨迹定制优化及柔顺跟踪控制.pdf
- 污水生化处理工艺发展阶段化技术特征及未来趋势.pdf
最近下载
- 2025年新高考语文一轮复习信息类文本阅读专题三:分析思路结构(解析版).docx VIP
- NBT 32047-2018光伏发电站土建施工单元工程质量评定标准.docx
- 江南快速tomcb培训教材.ppt
- 东菱面包机说明书..pdf
- 外研版英语(三起点)四年级上册 Module5 大单元学历案教案 教学设计附作业设计(基于新课标教学评一体化).docx
- 信息技术《网络信息辨真伪》课件.pptx VIP
- 《生活中的函数》课件.pptx VIP
- 幼儿园中班数学《10以内的相邻数》课件.pptx VIP
- 《家乡文化生活》课件 统编版高中语文必修上册.pptx
- 四年级信息技术云盘文件巧管理教学课件.pptx VIP
文档评论(0)