汇编语言程序设计-课程设计

汇编语言程序设计-课程设计

ID:29945532

大小:148.50 KB

页数:8页

时间:2018-12-25

汇编语言程序设计-课程设计_第1页
汇编语言程序设计-课程设计_第2页
汇编语言程序设计-课程设计_第3页
汇编语言程序设计-课程设计_第4页
汇编语言程序设计-课程设计_第5页
资源描述:

《汇编语言程序设计-课程设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一、实验目的1.熟练掌握call、ret的原理及应用2.熟练掌握子程序的框架、进行模块化程序设计3.掌握参数与结果的传递、批量数据传递等问题的解决方法二、实验内容及要求(一)综合程序设计:利用实验10中的三个子程序,将poweridea公司的数据按照下图所示的格式在屏幕上显示出来,要求计算人均收入并显示出来。poweridea公司的数据如下:assumecs:codesgdatasegmentdb'1975','1976','1977','1978','1979','1980','1981','1982','1983'db'1

2、984','1985','1986','1987','1988','1989','1990','1991','1992'db'1993','1994','1995';年份dd16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514dd345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000;公司总收入dw3,7,9,13,28,38,130,220,476,778,1001,144

3、2,2258,2793,4037,5635,8226dw11542,14430,15257,17800;公司雇员人数dataendstablesegmentdb21dup('yearsummne??')tableends要求:(1)给出该设计过程或算法(2)在代码中必要的地方给出相应注释(3)最终显示结果。三、实验解答过程及结果(1)该题目的第一段db型年份数据是以字符串储存的,不适合后续的操作,所以先用ice子程序把年份数据转化为word型数据。接下来循环开始,先调用dtoc1子程序,把第一年(1975)的word型年份数据

4、转化为字符串储存在es中,再调用show_str函数在屏幕缓冲区显示出来。接着调用dtoc2子程序和show_str子程序把第一年的收入在同一行显示出来。再接着调用dtoc1子程序和show_str子程序把第一年的雇员数在同一行显示出来,最后计算平均收入,同样调用两个子程序显示出来。不停地循环,循环21次,把所有的数据都显示出来,输入程序结果,程序完结。(2)代码及数据如下:assumecs:codesgdatasegmentdb'1975','1976','1977','1978','1979','1980','1981',

5、'1982','1983'db'1984','1985','1986','1987','1988','1989','1990','1991','1992'db'1993','1994','1995';年份dd16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514dd345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000;公司总收入dw3,7,9,13,28,38,130,220

6、,476,778,1001,1442,2258,2793,4037,5635,8226dw11542,14430,15257,17800;公司雇员人数dataendstablesegmentdb21dup('yearsummne??')tableendsstacksegmentdb1024dup(0)stackendscodesgsegmentstart:movax,datamovds,axmovax,tablemoves,axmovax,stackmovss,axmovsp,1024movsi,0movbx,0movdh,5

7、movax,1975;初始化,dh为输出时的行数movcx,21so:callicepushaxmovax,ds:[si]calldtoc1popaxpushcxmovdl,1movcl,00000111bcallshow_strpopcx;这两段输出年份pushaxpushdxmovax,ds:[si+84]movdx,ds:[si+86]calldtoc2popdxpopaxpushcxmovdl,8movcl,00000111bcallshow_strpopcx;这两段输出收入pushaxmovax,ds:[bx+168

8、]calldtoc1popaxpushcxmovdl,18movcl,00000111bcallshow_strpopcx;这两段输出雇员数pushaxpushdxmovax,[si+84]movdx,[si+86]divwordptrds:[bx+168];计算人均收入,结

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。