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