在汇编中显示一个字符的 ASCII 代码

Displaying the ASCII-Code of a char in assembly

我对汇编有点陌生,我想知道如何获取字符 ASCII 代码并打印出该 ASCII 代码。我正在使用 MASM (Dosbox)。

MOV AX, 'A'  ; -> I want to print out the ASCII code of 'A'

感谢您的回答!

来自评论

MOV AX, 'A' MOV BX, 10 DIV BL MOV AH, 2 INT 21h

这个字节大小的除法将在 AL 中留下商,在 AH 中留下余数。
但是 DOS.PrintCharacter 函数 02h 需要它在 DL 寄存器中的输入。

After DIV: ADD AH, 48 ADD AL, 48

可以转换,但您可以使用 ADD AX, 3030h

一次性完成

I got this output: ##

尝试下一个代码:

mov ax, 'A'
mov bl, 10
div bl
add ax, 3030h
mov dx, ax      ; Moving tens "6" to DL for printing and preserving the units in DH
mov ah, 02h     ; DOS.PrintCharacter
int 21h
mov dl, dh      ; units "5"
mov ah, 02h     ; DOS.PrintCharacter
int 21h

Displaying numbers with DOS 有关于如何处理更大数字的详细解释。