鱼C论坛

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

[汇编作业] 课程设计1

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

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

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

x
  1. assume cs:c,ds:d,es:t
  2. d    segment
  3.      db '1975','1976','1977','1978','1979','1980','1981','1982','1983','1984','1985'
  4.      db '1986','1987','1988','1989','1990','1991','1992','1993','1994','1995'
  5.      dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514,345980,590827
  6.      dd 803530,1183000,1843000,2759000,3753000,4649000,5937000
  7.      dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226,11542,14430
  8.      dw 15257,17800
  9. d    ends
  10. t    segment
  11.      db 22 dup ('year summ ne ?? ')
  12. t    ends
  13. c    segment
  14.   s:mov ax,d
  15.      mov ds,ax
  16.      mov ax,t
  17.      mov es,ax
  18.      mov bx,0
  19.      mov bx,00h
  20.      mov cx,21d
  21.   s1:push cx
  22.      mov cx,4
  23.      mov di,0
  24. s10:mov ax,0
  25.      mov al,[si]
  26.      mov es:[bx+di],al
  27.      inc di
  28.      inc si
  29.      loop s10
  30. s11:mov ax,[si+50h]
  31.      mov es:[bx+5],ax

  32.      mov ax,[si+52h]
  33.      mov es:[bx+7],ax
  34. s12:mov ax,es:[bx+5]
  35.      mov dx,es:[bx+7]
  36.      mov cx,ds:[bp+0a8h]
  37.      mov es:[bx+0ah],cx
  38.      div cx            
  39.      mov es:[bx+0dh],ax  
  40.      add bp,2h
  41.      add bx,10h
  42.      pop cx
  43.      loop s1
  44.          mov cx,15h
  45.          mov bp,0
  46.          mov bl,2
  47.          mov bh,3
  48.     cylc:push cx
  49.          push bx
  50. show_str:mov cx,0
  51.          mov dh,bl
  52.          mov dl,bh
  53.          mov cl,2
  54.          mov ax,0b800h  
  55.          mov ds,ax
  56.          mov ax,0
  57.          mov al,0a0h   
  58.          mul dh         
  59.          mov di,ax
  60.          mov al,2h
  61.          mul dl        
  62.          sub ax,2h
  63.          add di,ax
  64.          mov dl,cl
  65.          mov bx,0
  66.          mov si,0
  67.          mov cx,4
  68.    dtoc1:mov al,es:[ bp+si]
  69.          mov ah,0
  70.          mov [bx+di],al
  71.          mov [bx+di+1],dl
  72.          inc bx
  73.          inc bx
  74.          inc si
  75.          loop dtoc1
  76.          jmp near ptr data2
  77.    dtoc2:mov bx,20h
  78.          mov si,0
  79.          mov dl,2h
  80.        o:mov cl,es:[si+150h]
  81.          mov ch,0
  82.          mov [bx+di],cl
  83.          mov [bx+di+1],dl
  84.          add bx,2
  85.          inc si
  86.          inc cx                                                         
  87.          loop o
  88.          jmp near ptr data3
  89.    dtoc3:mov bx,50h
  90.          mov si,0
  91.          mov dl,2h
  92.       o1:mov cl,es:[si+150h]
  93.          mov ch,0
  94.          mov [bx+di],cl
  95.          mov [bx+di+1],dl
  96.          add bx,2
  97.          inc si
  98.          inc cx
  99.          loop o1
  100.          jmp near ptr data4
  101.   dtoc4:mov bx,80h
  102.         mov si,0
  103.         mov dl,2h
  104.      o2:mov cl,es:[si+150h]
  105.         mov ch,0
  106.         mov [bx+di],cl
  107.         mov [bx+di+1],dl
  108.         add bx,2
  109.         inc si
  110.         inc cx
  111.         loop o2
  112.         jmp near ptr b
  113.      data2:mov bx,0
  114.            mov ax,es:[bp+5]
  115.            mov dx,es:[bp+7]
  116.            mov cx,0ah
  117.            call divdw2
  118.            jmp near ptr dtoc2
  119.      data3:mov bx,0
  120.            mov ax,es:[bp+0ah]
  121.            mov dx,0
  122.            mov cx,0ah
  123.            call divdw3
  124.            jmp near ptr dtoc3
  125.      data4:mov bx,0
  126.            mov ax,es:[bp+0dh]
  127.            mov dx,0
  128.            mov cx,0ah
  129.            call divdw4
  130.            jmp near ptr dtoc4
  131.     divdw2:mov cx,0ah
  132.            push ax
  133.            mov ax,dx
  134.            mov dx,0
  135.            div cx
  136.            mov si,ax
  137.            pop ax
  138.            div cx
  139.            mov cx,dx
  140.            mov dx,si
  141.            add cx,30h
  142.            push cx
  143.            inc bx

  144.            mov cx,ax
  145.            inc cx
  146.            loop divdw2
  147.            mov cx,bx     
  148.            mov bx,0
  149.          a:pop ax         
  150.            mov es:[bx+150h],al
  151.            inc bx
  152.            loop a
  153.            mov ax,0
  154.            mov es:[bx+150h],ax
  155.            ret
  156.     divdw3:mov cx,0ah
  157.            push ax
  158.            mov ax,dx
  159.            mov dx,0
  160.            div cx
  161.            mov si,ax
  162.            pop ax
  163.            div cx
  164.            mov cx,dx
  165.            mov dx,si
  166.            add cx,30h
  167.            push cx
  168.            inc bx
  169.            mov cx,ax
  170.            inc cx
  171.            loop divdw3
  172.            mov cx,bx     
  173.            mov bx,0
  174.         a0:pop ax         
  175.            mov es:[bx+150h],al
  176.            inc bx
  177.            loop a0
  178.            mov ax,0
  179.            mov es:[bx+150h],ax
  180.            ret
  181.     divdw4:mov cx,0ah
  182.            push ax
  183.            mov ax,dx
  184.            mov dx,0
  185.            div cx
  186.            mov si,ax
  187.            pop ax
  188.            div cx
  189.            mov cx,dx
  190.            mov dx,si
  191.            add cx,30h
  192.            push cx
  193.            inc bx
  194.            mov cx,ax
  195.            inc cx
  196.            loop divdw4
  197.            mov cx,bx     
  198.            mov bx,0
  199.         a1:pop ax         
  200.            mov es:[bx+150h],al
  201.            inc bx
  202.            loop a1
  203.            mov ax,0
  204.            mov es:[bx+150h],ax
  205.            ret
  206.        b:add bp,10h
  207.          pop bx
  208.          inc bl
  209.          pop cx
  210.          dec cx
  211.          jcxz e
  212.          jmp near ptr cylc
  213.    e:mov ax,4c00h
  214.      int 21h
  215. c    ends
  216. end s
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2016-6-15 19:34:49 | 显示全部楼层
哇!!!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2016-11-6 09:28:49 | 显示全部楼层
厉害
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2016-11-6 11:14:44 | 显示全部楼层
厉害啊,我当时做不来,都是直接看的答案
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-3 17:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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