应用举例:在屏幕的第12行,显示data段中以0结尾的字符串。

assume cs:code

data segment
      db 'conversation',0
data ends

code segment

start:
               mov ax, data
               mov ds, ax
               mov si, 0
               mov ax, 0b800h
               mov es, ax
               mov di, 12*160

s:
               cmp byte ptr [si], 0
               je ok
               mov al, [si]
               mov es:[di], al
               inc si
               add di, 2
               mov bx, offset s-offset ok
               int 7ch

ok:
               mov ax, 4c00h
               int 21h


code ends
end start

安装程序

assume cs:code

code segment

start:
        mov ax, cs
        mov ds,ax
        mov si,offset do0
        mov ax,0
        mov es,ax
        mov di,200h
        mov cx,offset do0end-offsetdo0
        cld
        rep movsb

        mov ax,0
        mov es,ax
        mov word ptr es:[7ch*4],200h
        mov word ptr es:[7ch*4+2],0

        mov ax,4c00h
        int 21h

do0:
        push bp
        mov bp,sp
        add [bp+2],bx

        pop bp
        iret

        mov ax,4c00h
        int 21h

do0end:
        nop

code ends
end start

 

posted on 2018-11-12 16:43  迷心迷  阅读(206)  评论(0编辑  收藏  举报