我有以下汇编代码。我已经在我的DS
. 稍后在代码中,我进入BX
要访问的数组元素的索引号。该PRINT_CHAR
过程只是通过AL
串行端口发送数据以显示在屏幕上。但由于某种原因,我似乎无法访问数组元素。它只是给了我一些虚假的价值。print_char
过程肯定没问题。我已经尝试了两种我知道的方法来访问数组。任何帮助,将不胜感激。谢谢!
DATA_SEG SEGMENT
ARRAY DB '1','2','3','1','2','3','4','5','6','4','5','6'
bottom2 DB '7','8','9','7','8','9','*','0','#','*','0','#'
DATA_SEG ENDS
topnumbers:
cmp BX, 12
jge bottom_numbers
MOV AL,DS:ARRAY[BX] ; Stores character in AL (?)
jmp NUMBERS
bottom_numbers:
sub BL, 12d
LEA SI, bottom2
ADD SI, BX
MOV AL, [SI]
NUMBERS:
XOR AH, AH
CALL FAR PTR PRINT_CHAR