云文档网 - 专业文章范例文档资料分享平台

汇编语言程序课程设计

来源:网络收集 时间:2024-05-05 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

汇编课程设计与学习总结

系 别 届 别 学生姓名 指导教师 专 业 班 级 学 号 职 称

二O 一六 年 六月

课程设计任务安排:

Power idea公司从1975年成立一直到1995年的基本情况如下表所示,该数据已在程序中定义好(见图1-1):

年份 表1-1:公司基本情况

收入(千美元) 雇员(人) 人均收入(千美元) 1975 1976 1977 1978 1979 1980 … 1995

data segment 16 22 382 1356 2390 8000 … 5937000 3 7 9 13 28 38 … 17800 ? ? ? ? ? ? … ? db '1975','1976','1977','1978','1979','1980','1981','1982','1983' db '1984','1985','1986','1987','1988','1989','1990','1991','1992' db '1993','1994','1995' ;以上是21年的21个字符串 dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514 dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000 ;以上是表示21年公司总收入的21个dowrd型数据 dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226 ;以上是表示21年公司雇员人数的21个word型数据

dw 11542,14430,15257,17800 data ends 图1-1:程序中数据定义

计算data数据段中每一年的人均收入,并将所有数据按照如图1-2所示的格式在屏幕上显示出来。

图1-2:效果图

第一部分:程序设计思路以及程序流程图(这部分首先描述设计框架, 然后画出流程图) 程序主要从以下几个方面来进行设计 1、 人均收入的计算 人均收入等于收入除以雇员人数。设计中要注意的是要相对应的收入除以相对应的雇员人数。 所以在设计中用了直接寻址和间接寻址的方式来控制。si来定位 显示缓冲区的数值放置位置和年份字符串的字符,bx定位收入字符串中 的字符,di定位雇员字符串中的字符。 2、 在屏幕中显示结果 向段地址为b800的地址空间写入数据,写入的内容将出现在显示器上。一个字符在显示缓冲区要占两个字节,低位字节存储字符的 ASCII码,高位字节存储字符的属性。 本设计中将年份、收入、雇员以及计算出的人均收入的数值转化为十进制的字符串,每个字符的ASCII码放入显示缓存区的低位;高位 存放颜色属性,本次设计为黑底白字,故设置为00000111B,即07h。 本程序共用了几个子程序,子程序之间相互调用,尽可能地将程 序优化。: 1、 2、 3、 4、 5、 s:主要作用是在指定位置将年份、收入、雇员以及计算出的人均收入的数值放入显示缓冲区中,以指定的颜色进行显示。在过程中调用其他子程序,循环21次,将每个数据都放入缓存区中。 changeToStr:主要是将字型数据转换成十进制形式的字符串,以便屏幕中显示的是我们能够读懂的信息。转换方法是用数据除以10,循环多次,每次得到的余数都加上30H,便得到表示十进制的ASCII码串。 s1:判断数据的每一位都转化成十进制的ASCII码,只要除到商为0,就能确定每一位都转化了。所以在程序中循环多次,用jnz指令实现相关功能,直至数据各位的值都求出。 s2:将得到的十进制ASCII码串一位位地放入缓冲区中,用jnz指令判断,直至数值都放入显示缓冲区后,返回上一级程序。 divdw:进行不会溢出的除法运算。在对字型数据的转换过程中,实现对10的不断取余。同时在计算人均收入时,完成收入除以雇员人数的计算。 定位到收入字段 将年份放入es中,颜色设置为黑底白字 将基本数据放入寄存器dx,将es的段地址赋值为0b800h ,即为显示缓冲区 开始 将收入的值转化为十进制的ASCII码,放入es中,颜色设置为黑底白字 定位到年份定位到雇佣人数字段 bx加上84,收入 字段,显示缓冲区换至 下一行。 将雇员人数的值转化为十进制的ASCII 码,放入es中,颜色设置为黑底白字 Y 结束 N 是否循环了21次? 将人均收入的值转化为十进制的ASCII码,放入es中,颜色设置为黑底白字 收入除以雇员人数,得到人均收入

百度搜索“yundocx”或“云文档网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,云文档网,提供经典综合文库汇编语言程序课程设计在线全文阅读。

汇编语言程序课程设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.yundocx.com/wenku/187393.html(转载请注明文章来源)
Copyright © 2018-2022 云文档网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219