INT 21h不打印

时间:2013-05-10 10:03:32

标签: assembly x86 x86-16

我想知道为什么这个程序不打印:

print:
push ax
push bx
push dx
mov ah, 02h      

ciclo:
mov al, [si]   
int 21h
inc si
loop ciclo

pop dx
pop bx
pop ax 
ret

根据here,在INT 21h为2时调用AH,在stdout上打印AL中包含的ASCII代码。调试时我什么都没找到......

1 个答案:

答案 0 :(得分:4)

它会在DL中打印字符(参见this reference)。

例如,如果DL包含十进制值65,则会打印字符A(因为65是'A'的ASCII代码)