.ORIG x3000 JSR A OUT BRnzp DONE A AND R0,R0,#0 ADD R0,R0,#5 JSR B RET DONE HALT ASCII .FILL x0030 B LD R1,ASCII ADD R0,R0,R1 RET .END 我想输出5,我的代码有什么问题
时间: 2024-01-16 20:04:38 浏览: 147
abci_0.0~git20170124.0.f94ae5e.orig.tar.xz
在你的代码中,你将ASCII字符'0'的地址存储在了一个单独的指令中,但是你没有将该地址加载到一个寄存器中。因此,在你的B子程序中,你没有使用正确的地址来输出数字5。
以下是一个修改后的代码示例,可以输出数字5:
```
.ORIG x3000
JSR A
OUT ; 输出数字5
BRnzp DONE
A AND R0,R0,#0
ADD R0,R0,#5
JSR B
RET
DONE HALT
ASCII .FILL x0030
B LD R1,ASCII
ADD R0,R1,#5 ; 加载'0'的地址并加上数字5
RET
.END
```
在这个修改后的代码中,我们在B子程序中加载了ASCII字符'0'的地址并将其与数字5相加,以输出数字5。
阅读全文