这是我的 Lc3 汇编代码
.ORIG x3000
AND R0,R0, #0
AND R2,R2, #0
ADD R2,R2, #7
JSR SUB
ADD R2,R2, ASCII
ADD R0,R2,#0
TRAP x21
SUB ADD R2,R2,#9
ADD R7,R7,#1
RET
HALT
ASCII .FILL x0000
.END
当我尝试汇编代码时,我收到了这些错误
我知道 pass 1 是指组装过程的第一步,即添加变量以及它们在符号表中保存的值。我知道第 2 步是使用符号表替换值。(以Lc3 汇编为参考)
谁能解释为什么汇编程序试图在第一遍替换并导致错误?不应该通过 1 将 ASCII 识别为包含 x0001 的变量并且不尝试替换它吗?