assume cs:code
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,45257,17800
data ends
agency segment
db 8 dup(0)
agency ends
stack segment
dw 32 dup(0)
stack ends
code segment
;————————————————————————————主程序开始———————————————————————————————
start:
call clr_scr ;清屏
mov ax,agency
mov ds,ax ;设置agency为数据段
mov ax,data
mov es,ax ;设置data为扩展段
mov si,0 ;用于数据段寻址
mov di,0 ;用于扩展段寻址
mov bx,0 ;雇员数每个数据占2个字节,与其他数据不同步,故单独用bx寻址
mov dh,4 ;记录行号,从显示屏的第4行开始显示
mov cx,21 ;显示的行数为21行
x1:
push cx
;————————–年份——————————
mov ax,es:[di]
mov ds:[si],ax
mov ax,es:[di+2]
mov ds:[si+2],ax ;将年份存入数据段
mov byte ptr ds:[si+4],0
mov dl,0
mov cl,2 ;设置显示参数
call show_str ;显示年份
;————————–收入——————————
mov ax,es:[84+di]
push dx ;由于dh存储行数,下面的dtoc函数又要使用dx,故先将dx入栈
mov dx,es:[84+di+2]
call dtoc_dword ;将dx和ax联合存储的dword型数据转成以ds:si为首地址,以0结尾的字符串
pop dx
mov dl,20
mov cl,2 ;设置显示参数
call show_str ;显示收入
;————————-雇员数—————————–
mov ax,es:[84+84+bx]
call dtoc_word ;将ax存储的word型数据转成以ds:si为首地址,以0结尾的字符串
mov dl,40
mov cl,2 ;设置显示参数
call show_str;显示雇员数
;————————人均收入—————————-
mov ax,es:[84+di]
push dx
mov dx,es:[84+di+2]
p word ptr es:[84+84+bx] ;人均收入=收入 雇员数,结果存储在ax中
call dtoc_word ;将ax存储的word型数据转成以ds:si为首地址,以0结尾的字符串
pop dx
mov dl,60
mov cl,2 ;设置显示参数
call show_str;显示人均收入
add di,4
add bx,2
add dh,1 ;设置下次循环参数变化
pop cx
loop x1
mov ax,4c00h
int 21h
;————————————————————————————主程序结束———————————————————————————————
;++++++++++++++++++++++++++++子函数开始+++++++++++++++++++++++++++++++
show_str:
;—————————————————————以0结尾的字符串显示————————————————————————
发布者:我爱自学网呀,火焰兔收录并登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不做权威认证,如若验证其真实性,请咨询相关权威专业人士。https://huoyantu.com/167663.html
版权声明:
国家知识产权局《要求删除或断开链接侵权网络内容的通知》填写说明:http://www.ncac.gov.cn/chinacopyright/contents/12227/342400.shtml
请按照此通知格式填写(或提供具有法律效应且证据链完整的证明)发至本站的邮箱 huoyantu@qq.com
(收到核实后 24小时内绝对处理)