汇编网首页登录博客注册
fenglixin70953的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  

[2008-04-17 18:49] 15章全屏显A-Z

assume cs:code
stack segment
db 128 dup(0)
stack ends
code segment
start:
     mov ax,stack
     mov ss,ax
     mov sp,128
     
     mov ax,0b800h
     mov es,ax
     mov ah,'A'
   s:
     mov dl,0
     mov cx,49
     s5: push cx
         push ax
         mov al,160
         mul dl
         mov bx,ax
         
         pop ax
         mov di,0
         mov cx,80         
     s4: mov byte ptr es:[bx+di],ah
         mov byte ptr es:[bx+di+1],2
         add di,2
         loop s4
         
         inc dl
         pop cx
         loop s5
    
     call s1
     inc ah
     cmp ah,'Z'
     jna s
     mov ax,4c00h
     int 21h
     
   s1:push ax
      push dx
      mov dx,1000h
      mov ax,0
     s2:sub ax,1
        sbb dx,0
        cmp ax,0
        jne s2
        cmp dx,0
        jne s2
        pop dx
        pop ax
        ret
code ends
end start
评论次数(3)  |  浏览次数(511)  |  类型(作业) |  收藏此文  | 

[  wdm   发表于  2008-04-17 20:01  ]

不错。不过,程序没有注释和分析,就会像僵尸一样干瘪啊。

[  fenglixin70953   发表于  2008-04-17 22:20  ]

[  fenglixin70953   发表于  2008-04-28 11:01  ]

s: 
     mov dl,0 
     mov cx,49 
     s5: push cx 
         push ax 
         mov al,160 
         mul dl 
         mov bx,ax 
          
         pop ax 
         mov di,0 
         mov cx,80          
     s4: mov byte ptr es:[bx+di],ah 
         mov byte ptr es:[bx+di+1],2 
         add di,2 
         loop s4 
          
         inc dl 
         pop cx 
         loop s5 
这段我写得太长了
用下面的就可代替
 s:
     
     mov di,0
     mov cx,4000
     s4:mov byte ptr es:[di],ah
        mov byte ptr es:[di+1],2
        add di,2
        loop s4

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码