我正在编写一段汇编代码,旨在使用 BIOS 中断获取键盘输入,然后使用另一个 BIOS 中断将其打印到屏幕上。我正在为 x86 系统使用 NASM 编译器。在我的代码的第 19 行(标有星号 (*),我收到“操作码和操作数的无效组合”错误。我知道这通常代表任意数量的语法错误,但在我的技能水平上,我不能工作到任何细节,对不起。这是我的代码块:
; ---------------------------------------------
; Get input (hangs on input and loops forever)
; ---------------------------------------------
GetInput:
XOR AH, AH ;AH = 0 for interrupt 16.0
INT 0x16 ;Fetch the next key pressed.
MOV SI, keymap ;Set SI to the head pointer of the keymap
ADD SI, AH ;Increase the pointer by the key number.
*MOV AL, [SI] ;Load the returned key for printing.
CALL PrintCharacter ;Print the key
CALL GetInput ;Wait on the next key.
RET
如果您需要更多信息,请告诉我,谢谢!