如何解决LC3程序电源功能?
我可以使用 4 个寄存器 R0、R1、R2 和 R3,并使用嵌套循环。
更准确地说,它将为 R2 供电给 R3,使 R2^R3。
这是我目前的代码:
MyPOW ADD R3,R3,#0
BRz ZeroP
AND R0,R0,#0
ADD R1,#0
; Outer Loop
OLoop AND R3,#0
; Inner Loop
ILoop ADD R0,R2
ADD R2,R2,#-1
BRp ILoop
ADD R3,R0
ADD R1,R1,#-1
BRp OLoop
RET
ZeroP AND R3,#0
ADD R3,#1
RET
所以 MyPow 是函数的名称,它首先检查 R3 是否为 0,如果为零则跳转到立即返回 1 的 ZeroP。
否则,它将循环并将 R2 本身乘以 R3 次。这就是我的目标。
内循环应该做自乘工作,外循环会递减 R3,所以它会重复 R3 次。
但它不能正常工作,它只是进行正常的乘法,例如如果 R2 = 2 且 R3 = 3,则返回 6。
我不知道为什么,有人可以帮忙吗?谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。