|
主题 : : 实验七代码,欢迎讨论 [已解决] |
回复[ 2次 ]
点击[ 348次 ] | |
荣誉值:2
信誉值:2
注册日期:2011-09-18 20:07 |
assume cs:code, ds:data, 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 8 dup (0)
stack ends
code segment
start:
mov ax, data
mov ds, ax
mov ax, table
mov es, ax
mov ax, stack
mov ss, ax
mov sp, 10h
mov bp, 0 ;bp table base pointer
mov di, 0 ;bp+si
mov si, 0
mov cx, 21
cycle:
mov bx, 0 ;bx data base pointer
;cpyear
mov ax, [bx][di]
mov es:[bp], ax
mov ax, [bx][di].2
mov es:[bp].2, ax
;cp profit
mov bx, 0054h
mov ax, [bx][di]
mov es:[bp].5, ax
mov ax, [bx][di].2
mov es:[bp].7, ax
;cp employee
mov bx, 00A8h
mov ax, ds:[bx][si]
mov es:[bp].0ah, ax
;average
mov ax, es:[bp].5
mov dx, es:[bp].7
div word ptr es:[bp].0ah
mov es:[bp].0dh, ax
add si, 2
add di, 4
add bp, 10h
loop cycle
mov ax, 4c00h
int 21h
code ends
end start | | |