assume cs:code
data segment
db 'welcome to masm!',0
data ends
code segment
start:
mov dh,8
mov dl,3
mov cl,2
mov ax,data
mov ds,ax
mov si,0
call show_str
mov ax,4c00h
int 21h
show_str:
mov ax,0b800h
mov es,ax
;转化显存行
mov al,dh
dec al
mov ah,0
mov bh,160
mul bh
mov bx,ax
;转化显存列
mov al,dl
mov ah,2
mul ah
mov di,ax
;写进显存
s:
push cx
mov cl,[si]
mov ch,0
jcxz ok
mov es:[bx+di],cl
pop cx
mov es:[bx+di+1],cl
inc si
add di,2
jmp s
ok: ret
code ends
end start |