Anonymous 发表于 2013-8-1 12:52:52

解释代码

本帖最后由 匿名 于 2015-8-30 16:52 编辑

assume cs:codesg


data segment
    ; 年份
    db '1975', '1976', '1977', '1978', '1979', '1980', '1981', '1982'
    db '1983', '1984', '1985', '1986', '1987', '1988', '1989', '1990'
    db '1991', '1992', '1993', '1994', '1995'
   
    ; 收入
    dd 16, 22, 382, 1356, 2390, 8000, 16000, 24486, 50065, 97479
    dd 140417,197514, 345980, 590827, 803530, 1183000, 1843000
    dd 2759000, 3753000, 4649000, 5937000
   
    ; 雇员数
    dw 3, 7, 9, 13, 28, 38, 130, 220, 476, 778, 1001, 1442, 2258, 2793
    dw 4037, 5635, 8226, 11542, 14430, 15257, 17800
data ends


table segment
    db 21 dup('year summ ne ?? ')
table ends


codesg segment
start:
    mov ax, data
    mov ds, ax
    mov ax, table
    mov es, ax
   
    mov cx, 21
    mov bx, 0       ; 年份的首地址
    mov si, 54H   ; 收入的首地址
    mov di, 0a8H    ; 雇员数的首地址
    mov bp, 0       ; table的基址
s:
    mov ax,
    mov es:, ax
    mov ax, 2
    mov es:2, ax
    ; 年份
   
    mov ax,
    mov es:5, ax
    mov ax, 2
    mov es:7, ax
    ; 收入
   
    mov ax,
    mov es:0aH, ax
    ; 雇员
   
    mov ax,
    mov dx, 2
    div word ptr
    mov es:0dH, ax
    ; 人均收入
   
    add bx, 4
    add si, 4
    add di, 2
    add bp, 10H
    loop s
    mov ax, 4c00H
    int 21H
codesg ends


end start

页: [1]
查看完整版本: 解释代码