编写了一遍程序,最后调试成功。显示时忘记显示缓存是一个字对应屏幕一个字符位置,乱码了
assume cs:code
code segment
start:
mov ax,0
mov ds,ax
mov ds:[2],ax
mov ax,200h
mov ds:[0],ax
mov ax,0
mov es,ax
mov di,200h
mov ax,cs
mov ds,ax
mov ax,d0
mov si,ax
mov cx,offset d0end - offset d0
cld
rep movsb
mov ax,4c00h
int 21h
d0:
jmp d0start
db "Welcome to masm!"
d0start:
mov ax,0b800h
mov es,ax
mov ax,0a0h
mov bl,5
mul bl
add ax,48
mov di,ax
mov ax,cs
mov ds,ax
mov si,202h
mov cx,10h
s:
mov al,ds:[si]
mov es:[di],al
inc di
mov al,2
mov es:[di],al
inc si
inc di
loop s
mov ax,4c00h
int 21h
d0end:
nop
code ends
end start