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

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
友情链接

[2009-02-08 17:37] sy13_1

assume cs:code
data segment
        db 'welcome to masm!',0
data ends
code segment
start:        ;安装程序
        mov ax,cs
        mov ds,ax
        mov si,offset tp
        mov ax,0
        mov es,ax
        mov di,200h
        cld
        mov cx,offset tpend-offset tp
        rep movsb
                
        mov ax,0;安装入口
        mov es,ax
        mov word ptr es:[7ch*4],200h
        mov word ptr es:[7ch*4+2],0h
        

        mov dh,10
        mov dl,10
        mov cl,2
        mov ax,data
        mov ds,ax
        mov si,0        
        int 7ch;调用中断
        mov ax,4c00h
        int 21h
        
tp:   mov ax,0b800h
        mov es,ax
        push di
        push bx
        push cx

;以下为确定在屏幕显示的位置
        mov al,dl
        mov ah,2
        mul ah
        mov bx,ax
        mov al,dh
        mov ah,160
        mul ah
        add bx,ax
        mov di,0
        mov ah,cl
       
   
lp:        mov cl,ds:[si]
        mov ch,0
        jcxz ok
        mov al,byte ptr ds:[si]
        
        mov es:[bx+di],al;输出字符
        mov es:[bx+di+1],ah;输出字符属性
        
        
        
        add di,2
        inc si
        jmp lp
ok:        pop bx
        pop cx
        pop di
        iret                
tpend:nop
code ends 
end start
评论次数(1)  |  浏览次数(831)  |  类型(默认类型) |  收藏此文  | 

[  stategrid   发表于  2009-02-08 17:39  ]

怎么都不对齐了呀?

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