我正在学习MIPS,并且来自过程编程背景,事实证明这很困难。这是我在转向时遇到的一个问题。如果有任何答案的答案,将不胜感激。
假设rt是一个包含整数的寄存器。解释为什么 指令
sll $rd, $rt, h
有效放置
2^h ∗ rt
在寄存器rd
中答案 0 :(得分:0)
这与程序设计无关,而与二进制数字有关。
一些使用8位数字的示例:
如果您的数字为1
(十进制)-二进制为0000 0001
如果向左移动1,则将所有数字向上移动1,然后将0插入新的移位空间
所以现在您将使用二进制0000 0010
-或2
十进制。
再左移一次可得到0000 0100
或4
小数点。
因此,如果将原始数字1左移2,则为4。
或将其视为模式:
1个左移= * 2(2 ^ 1)
2个左移= * 4(2 ^ 2)
所有看起来像
2^h ∗ rt