assembly DL可以存储计算机钥匙的ASCII码吗?

1szpjjfi  于 2023-01-02  发布在  其他
关注(0)|答案(1)|浏览(147)

我看了另一个问题,有人将DL寄存器与ASCII值43进行比较,以便在按下+键时接收结果,这是否意味着DL寄存器可以根据按下的键存储ASCII值?
我自己还没有试过,因为我对组装不是很熟悉,但我想知道这是不是真的。

scyqe7ek

scyqe7ek1#

DL寄存器实际上可以存储0至255范围内的ASCII码。
这是否意味着DL寄存器可以根据按下的键存储ASCII值?

该值必须由汇编程序放在此处

使用BIOS:

mov  ah, 00h   ; BIOS.GetKeystroke
int  16h       ; -> AL is ASCII, AH is scancode
mov  dl, al    ; Move to DL if the program so desires
cmp  dl, 43    ; Compare for '+'

或使用DOS

mov  ah, 01h   ; DOS.GetCharacter
int  16h       ; -> AL is ASCII
mov  dl, al    ; Move to DL if the program so desires
cmp  dl, '+'

相关问题