汇编学习[内中断]

assume cs:code

code segment
start:
    mov ax,offset do
    mov si,ax
    mov ax,cs
    mov ds,ax
    mov ax,0
    mov es,ax
    mov di,200h
    
    mov cx,offset doend-offset do
    cld
    rep movsb

    mov word ptr es:[0],200h
    mov word ptr es:[2],0
    
    mov ax,4c00h
    int 21h
do:    
    jmp short dostart
    db "divide error!"
dostart:
    mov cx,13
    mov si,202h
    mov ax,cs
    mov ds,ax
    mov ax,0b800h
    mov es,ax
    mov di,12*160+36*2
    
s:    mov al,[si]
    mov ah,1
    mov es:[di],al
    mov es:[di+1],ah
    inc si
    add di,2    
    loop s    
    
    mov ax,4c00h
    int 21h
doend:
    nop

code ends
end start

 

posted @ 2013-02-23 22:33  Bug Man  阅读(116)  评论(0)    收藏  举报