assume cs:codeseg,ss:stack
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
dw 4 dup (0)
stack ends
codeseg segment
start: mov ax,data
mov ds,ax
mov dx,table
mov ax,stack
mov ss,ax
mov sp,8
mov es,dx
mov bx,0
mov si,0 ;table
mov di,84 ;收入
mov bp,168
mov dx,0
mov cx,21
s0: push cx
mov cx,4
s: mov al,[bx]
mov es:[si],al
inc bx
inc si
loop s
mov ax,ds:[di] ;写入收入
mov es:[si+1],ax ;
mov ax,ds:[di+2] ;
mov es:[si+3],ax ;
add di,4 ;写入收入
mov ax,ds:[bp] ;写入yuan gong
mov es:[si+6],ax ;
add bp,2 ;写入yuan gong
mov dx,es:[si+1]
mov ax,es:[si+3]
div word ptr es:[si+6]
mov es:[si+9],ax
add si,12
pop cx
loop s0
mov ax,4c00H
int 21H
codeseg ends
end start
在执行完