1,显示字符串
assume cs:codesg, ds:datasg
datasg segment
db 'hello, world', 0
datasg ends
codesg segment
start: mov dh, 14
mov dl, 40
mov cl, 2
mov ax, datasg
mov ds, ax
mov si, 0 ;si point to data
call show_str
mov ax, 4c00h
int 21h
;-------show_str---------------
show_str:
push si
push di
push cx
push bx
mov bl, cl
mov ax, 0b800h
mov es, ax
mov di, 0
mov al, 160
mul dh
mov di, ax
mov al, 2 ;es:di point to display memory
mul dl
add di, ax
s: xor cx, cx
mov cl, ds:[si]
jcxz ok
mov es:[di+0], cl
mov es:[di+1], bl
add si, 1
add di, 2
jmp s
ok: pop bx
pop cx
pop di
pop si
ret
codesg ends
end start
实验结果:
2,解