汇编语言王爽实验七

代码如下

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'
	;21个字符串,每个字符串占四个字节,总长度为84字节,尾编号用十进制表示为83,16进制表示为53H
	; data:0~data:53H
	
	dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
	dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000
	;21个双字型数据,共42个字,84个字节,尾编号用十进制表示为167,16进制表示为A7H
	;data:54H~data:A7H

	dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
	dw 11542,14430,15257,17800
	;21个字型数据,共42个字节,尾编号用十进制表示为209,16进制表示为D1H
	;data:A8H~data:D1H

data ends

table segment
	db 21 dup ('year summ ne ?? ')
	; 21行字符串,每行16个字节
table ends

codesg segment
	start:	mov ax,data
			mov ds,ax
			mov ax,table
			mov es,ax
			mov bx,0
			mov si,0
			; a循环解决了年份和紧随的空格问题,搞定了每行的0~4这5个编号的内容
			mov cx,21
		a:	mov ax,[bx]
			mov es:[si+0],ax
			add bx,2
			mov ax,[bx]
			mov es:[si+2],ax
			mov byte ptr es:[si+4],20H			;空格的ascii为20H
			add bx,2
			add si,16
			loop a
			
			mov bx,0
			mov si,0
			; b循环解决了收入和紧随的空格问题,搞定了每行的5~9这5个编号的内容
			mov cx,21
		b:	mov ax,54H[bx]
			mov es:[si+5],ax
			add bx,2
			mov ax,54H[bx]
			mov es:[si+7],ax
			mov byte ptr es:[si+9],20H			;空格的ascii为20H
			add bx,2
			add si,16
			loop b
			
			mov bx,0
			mov si,0
			; c循环解决了雇员和紧随的空格问题,搞定了每行的A、B、C这3个编号的内容
			mov cx,21
		c:	mov ax,0A8H[bx]
			mov es:[si+0AH],ax
			;	记得吗,汇编语言中数据不能以字母开头,否则在这里AH到底是数据还是寄存器呢
			mov byte ptr es:[si+0CH],20H
			add bx,2
			add si,16
			loop c
			
			mov bx,0
			mov di,0
			mov si,0
			mov cx,21
			; d循环解决了计算人均收入和紧随的空格问题,搞定了每行的D、E、F这3个编号的内容
		d:	mov ax,54H[bx]
			add bx,2
			mov dx,54H[bx]
			add bx,2
			div word ptr 0A8H[di]
			add di,2
			
			mov es:[si+0DH],ax
			mov byte ptr es:[si+0FH],20H
			add si,16
			loop d
			
			mov ax,4c00H
			int 21H
			
codesg ends
end start

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值