LC-3装配“重复标签”错误

时间:2018-02-09 05:00:06

标签: assembly lc3

在程序集中编写程序以从输入中打印两个字符,首先比较它们并首先使用较大的ASCII代码打印一个字符。我写了对我有意义的东西,但是汇编程序给了我错误“Duplicate label(R2)”。有谁知道为什么这不起作用?

.orig 3000 GETC LD R1,R0 GETC LD R2,R0 NOT R0,R2 ADD R0,R0,#1 ADD R0,R1,R0 BRN #3 OUT R1 OUT R2 BRNZP #2 OUT R2 OUT R1 HALT .end

还要补充一点,当我破坏代码并且只取出R2的行时,它会为其他寄存器吐出错误。这就像汇编程序将寄存器识别为标签。

1 个答案:

答案 0 :(得分:1)

LD R2,R0

你不要这样使用LD。

语法为LD DR, LabelLD DR, PCOffset9

另外 OUT R1

OUT是一个陷阱,它打印出R0中的字符,只打印出R0

也许汇编程序有一个错误,没有将这些错误标记为语法错误?