LC3乘法

LC3 Multiplication

所以我有一个 LC3 编码任务,我们必须在其中实现和测试用户子例程,以输入和输出十进制格式的无符号整数。现在对于我们的输入,我们必须通过应用重复乘法算法来执行一系列击键以构造单个整数值,该算法将通过 4 次加法乘以 10。我不是很理解这个乘以 4 加法的概念。谁能解释一下?

x 是您要乘以 10

的数字
a = x+x = 2x
b = a+a = 4x
c = b+b = 8x
d = a+c = 10x

如果您的值在 R1 中,您可以尝试以下操作:

ADD R2, R1, R1  ;Value = Value x 10
ADD R4, R2, R2
ADD R1, R4, R4
ADD R1, R1, R2