Assembly INT21H不打印

Assembly INT21H不打印,assembly,x86,x86-16,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 根据,调用INT 21h而AH为2时,会在标准输出上打印AL中包含的ASCII码。调试时,我什么也没发现…它将在DL中打印字符(请参阅) 例如,如果DL包含十进制值65,它将打印字符A(因为65是“A”的ASCII

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

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
根据,调用
INT 21h
AH
为2时,会在标准输出上打印
AL
中包含的ASCII码。调试时,我什么也没发现…

它将在
DL
中打印字符(请参阅)

例如,如果
DL
包含十进制值65,它将打印字符
A
(因为65是“A”的ASCII码)

它将打印
DL
中的字符(请参阅)

例如,如果
DL
包含十进制值65,它将打印字符
A
(因为65是“A”的ASCII码)