鱼C论坛

 找回密码
 立即注册
查看: 2551|回复: 3

[汇编作业] 课程设计1

[复制链接]
发表于 2016-6-15 14:35:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
assume cs:c,ds:d,es:t
d    segment
     db '1975','1976','1977','1978','1979','1980','1981','1982','1983','1984','1985'
     db '1986','1987','1988','1989','1990','1991','1992','1993','1994','1995'
     dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514,345980,590827
     dd 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,11542,14430
     dw 15257,17800
d    ends
t    segment
     db 22 dup ('year summ ne ?? ')
t    ends
c    segment
  s:mov ax,d
     mov ds,ax
     mov ax,t
     mov es,ax 
     mov bx,0 
     mov bx,00h
     mov cx,21d
  s1:push cx
     mov cx,4
     mov di,0
 s10:mov ax,0
     mov al,[si]
     mov es:[bx+di],al
     inc di
     inc si
     loop s10
 s11:mov ax,[si+50h]
     mov es:[bx+5],ax

     mov ax,[si+52h]
     mov es:[bx+7],ax
 s12:mov ax,es:[bx+5]
     mov dx,es:[bx+7]
     mov cx,ds:[bp+0a8h]
     mov es:[bx+0ah],cx
     div cx             
     mov es:[bx+0dh],ax  
     add bp,2h
     add bx,10h
     pop cx
     loop s1
         mov cx,15h
         mov bp,0
         mov bl,2
         mov bh,3
    cylc:push cx
         push bx
show_str:mov cx,0
         mov dh,bl
         mov dl,bh
         mov cl,2
         mov ax,0b800h  
         mov ds,ax
         mov ax,0 
         mov al,0a0h    
         mul dh         
         mov di,ax
         mov al,2h
         mul dl        
         sub ax,2h
         add di,ax
         mov dl,cl
         mov bx,0
         mov si,0
         mov cx,4
   dtoc1:mov al,es:[ bp+si]
         mov ah,0
         mov [bx+di],al
         mov [bx+di+1],dl
         inc bx 
         inc bx
         inc si
         loop dtoc1
         jmp near ptr data2
   dtoc2:mov bx,20h
         mov si,0
         mov dl,2h
       o:mov cl,es:[si+150h]
         mov ch,0
         mov [bx+di],cl
         mov [bx+di+1],dl
         add bx,2
         inc si
         inc cx                                                         
         loop o
         jmp near ptr data3
   dtoc3:mov bx,50h
         mov si,0
         mov dl,2h
      o1:mov cl,es:[si+150h]
         mov ch,0
         mov [bx+di],cl
         mov [bx+di+1],dl
         add bx,2
         inc si 
         inc cx
         loop o1
         jmp near ptr data4
  dtoc4:mov bx,80h
        mov si,0
        mov dl,2h
     o2:mov cl,es:[si+150h]
        mov ch,0
        mov [bx+di],cl
        mov [bx+di+1],dl
        add bx,2
        inc si
        inc cx
        loop o2
        jmp near ptr b
     data2:mov bx,0
           mov ax,es:[bp+5]
           mov dx,es:[bp+7]
           mov cx,0ah
           call divdw2
           jmp near ptr dtoc2
     data3:mov bx,0
           mov ax,es:[bp+0ah]
           mov dx,0
           mov cx,0ah
           call divdw3
           jmp near ptr dtoc3
     data4:mov bx,0
           mov ax,es:[bp+0dh]
           mov dx,0
           mov cx,0ah
           call divdw4
           jmp near ptr dtoc4
    divdw2:mov cx,0ah
           push ax
           mov ax,dx
           mov dx,0
           div cx
           mov si,ax
           pop ax
           div cx
           mov cx,dx
           mov dx,si
           add cx,30h
           push cx
           inc bx

           mov cx,ax
           inc cx
           loop divdw2
           mov cx,bx     
           mov bx,0
         a:pop ax          
           mov es:[bx+150h],al
           inc bx
           loop a
           mov ax,0
           mov es:[bx+150h],ax 
           ret
    divdw3:mov cx,0ah
           push ax
           mov ax,dx
           mov dx,0
           div cx
           mov si,ax
           pop ax
           div cx
           mov cx,dx
           mov dx,si
           add cx,30h
           push cx
           inc bx
           mov cx,ax
           inc cx
           loop divdw3
           mov cx,bx     
           mov bx,0
        a0:pop ax          
           mov es:[bx+150h],al
           inc bx
           loop a0
           mov ax,0
           mov es:[bx+150h],ax 
           ret
    divdw4:mov cx,0ah
           push ax
           mov ax,dx
           mov dx,0
           div cx
           mov si,ax
           pop ax
           div cx
           mov cx,dx
           mov dx,si
           add cx,30h
           push cx
           inc bx
           mov cx,ax
           inc cx
           loop divdw4
           mov cx,bx     
           mov bx,0
        a1:pop ax          
           mov es:[bx+150h],al
           inc bx
           loop a1
           mov ax,0
           mov es:[bx+150h],ax 
           ret
       b:add bp,10h
         pop bx
         inc bl
         pop cx
         dec cx
         jcxz e
         jmp near ptr cylc
   e:mov ax,4c00h
     int 21h
c    ends
end s
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-6-15 19:34:49 | 显示全部楼层
哇!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-11-6 09:28:49 | 显示全部楼层
厉害
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-11-6 11:14:44 | 显示全部楼层
厉害啊,我当时做不来,都是直接看的答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-6 14:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表