- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言程序设计-课程设计课件
实验目的
1.熟练掌握call、ret的原理及应用
2.熟练掌握子程序的框架、进行模块化程序设计
3.掌握参数与结果的传递、批量数据传递等问题的解决方法
实验内容及要求
(一)综合程序设计:利用实验10中的三个子程序,将power idea公司的数据按照下图所示的格式在屏幕上显示出来,要求计算人均收入并显示出来。
power idea公司的数据如下:
assume cs:codesg
data segment
db 1975,1976,1977,1978,1979,1980,1981,1982,1983
db 1984,1985,1986,1987,1988,1989,1990,1991,1992
db 1993,1994,1995
;年份
dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000
;公司总收入
dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
dw 11542,14430,15257,17800
;公司雇员人数
data ends
table segment
db 21 dup(year summ ne ??)
table ends
要求:
(1)给出该设计过程或算法
(2)在代码中必要的地方给出相应注释
(3)最终显示结果。
三、实验解答过程及结果
(1)该题目的第一段db型年份数据是以字符串储存的,不适合后续的操作,所以先用ice子程序把年份数据转化为word型数据。接下来循环开始,先调用dtoc1子程序,把第一年(1975)的word型年份数据转化为字符串储存在es中,再调用show_str函数在屏幕缓冲区显示出来。接着调用dtoc2子程序和show_str子程序把第一年的收入在同一行显示出来。再接着调用dtoc1子程序和show_str子程序把第一年的雇员数在同一行显示出来,最后计算平均收入,同样调用两个子程序显示出来。不停地循环,循环21次,把所有的数据都显示出来,输入程序结果,程序完结。
(2)代码及数据如下:
assume cs:codesg
data segment
db 1975,1976,1977,1978,1979,1980,1981,1982,1983
db 1984,1985,1986,1987,1988,1989,1990,1991,1992
db 1993,1994,1995
;年份
dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000
;公司总收入
dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
dw 11542,14430,15257,17800
;公司雇员人数
data ends
table segment
db 21 dup(year summ ne ?? )
table ends
stack segment
db 1024 dup(0)
stack ends
codesg segment
start:mov ax,data
mov ds,ax
mov ax,table
mov es,ax
mov ax,stack
mov ss,ax
mov sp,1024
mov si,0
mov bx,0
mov dh,5
mov ax,1975 ;初始化,dh为输出时的行数
mov cx,21
so:call ice
push ax
mov ax,ds:[si]
call dtoc1
pop ax
push cx
mov dl,1
mov cl
call show_str
pop cx ;这两段输出年份
push
您可能关注的文档
- 氟啶虫酰胺小试研究报告课件.doc
- 氮化钛陶瓷——从矿物原料加工到陶瓷合成论文.doc课件.doc
- 汇兴煤矿栈桥施工组织设计课件.doc
- 氮肥生产企业的安全评价与管理毕业论文课件.doc
- 汇城国际基础导墙地下室后浇带、导墙施工方案课件.doc
- 横岗街道老横坪公路片区内涝整治工程设计课件.doc
- 汇峰国际城塔吊安装(拆除)施工方案课件.doc
- 概念儿童安全餐椅设计开题报告课件.doc
- 汇川区团泽镇大坎村农用道路建设工程项目施工组织设计课件.doc
- 汇景发展环球中心地块排水管线迁改工程管线勘察详勘报告书课件.doc
- 运动风格趋势:轻量化户外 2025 S S.pdf
- 数字乡村建设村村通广播应用方案.pdf
- 高盛-日本市场策略 Japan Strategy Flash 1Q325 earnings summary Double-digit (%) profit growth as results largely surprised upwards 0820 2024.pdf
- CEEM《全球智库半月谈》(总第286期).pdf
- 智慧物流概论微课课件第4章智慧物流信息平台.pdf
- 数字乡村公共安全综合平台项目解决方案.pdf
- 智慧物流概论微课课件第7章智慧物流包装.pdf
- 【案例】”啤酒之王“的智慧物流探索之路.pdf
- 数字连江城市数字基座(一期)和数字乡村示范点建设项目.pdf
- 智慧物流概论微课课件第1章智慧物流概述.pdf
文档评论(0)