liuming1978 发表于 2023-6-16 20:26:09

实验七

assume cs:code,ds:data,es:table,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'
                        ;year
                        dd        16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
                        dd        345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000
                        ;summ
                        dw        3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
                        dw        11542,14430,15257,17800
                        ;ne
data ends

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

stack segment stack
                        db 128 dup(0)
stack ends       
code segment
start:                mov ax,data
                        mov ds,ax
                        mov ax,stack
                        mov ss,ax
                        mov sp,128
                        mov ax,0
                        mov ax,table
                        mov es,ax
                        mov ax,0
                        mov bx,0
                        mov si,0               
                       
                        mov cx,21
                       
       year1: push cx
                        ;-------------------------------------
                        mov cx,4
                        mov di,0
   year2:        mov al,byte ptr ;从年数组中得到数据
                        mov es:byte ptr ,al;将年数据存入内存
                        inc si
                        inc di
                        ;年份
                        loop year2
                        pop cx
                        add bx,10h
                        loop year1
                        ;-----------------------------------------
                        mov cx,21
                        mov ax,ds
                        mov bx,5h
                        add ax,bx
                        mov ds,ax
                        mov bx,0
                       
                        mov si,4
        summ1:        push cx
                        mov cx,1
                        mov di,5
        summ2:        mov ax,ds:
                        add si,2
                        mov dx,ds:
                        add si,2
                       
                        mov es:,ax
                        add di,2
                        mov es:,dx
                        loop summ2
                       
                        add bx,10h
                        pop cx
                        loop summ1
                        ;summ
                        ;----------------------------------------
                        mov cx,21
                        mov ax,data
                        mov bx,0ah
                        add ax,bx
                        mov ds,ax
                        mov bx,0
                        mov si,8
                        mov di,10
        ne1:    push cx               
                       
        ne2:        mov cx,1       
                        mov ax,ds:
                       
                        mov es:,ax
                        add si,2
                        loop ne2
                        add bx,10h
                        pop cx
                        loop ne1
                        ;ne
                        ;-----------------------------------------------
                        mov cx,21
                        mov ax,es
                        mov ds,ax
                        mov bx,0
        Mdiv1:push cx
                        push bx
                        mov si,0
                        ;mov bx,0
                       
                        mov cx,1
        Mdiv2:        mov si,5
                        mov di,13
                        mov ax,ds:
                        add si,2
                        mov dx,ds:
                        mov si,0ah
                        mov bx,
                        div bx
                        pop bx
                        mov es:,ax
                        push bx
                        loop Mdiv2
                        pop bx
                        pop cx
                        add bx,10h
                        loop Mdiv1
                        ;div
                       
                       
                       



                        mov ax,4c00h
                        int 21h
code ends
end start
       

歌者文明清理员 发表于 2023-6-16 22:35:54

大佬厉害
页: [1]
查看完整版本: 实验七