我正在练习我添加的binarys并且我想要溢出,我需要为510位添加01010和11011的答案,以节省十进制10和27的时间
添加后,我得到100101,这是37的预期答案。
然而,由于答案必须是5位,这是否意味着我将位置放在左边,1? 我对此感到困惑,因为这不是答案5吗?而不是37?因为它是00101,或者这只是计算机如何做到这一点?
也有人可以解释下面两个问题的含义吗?
最重要位的进位值是多少?
执行最重要位的价值是多少?
非常感谢任何帮助和澄清。
辛
答案 0 :(得分:1)
如果你只有五位,那么是,二进制10 + 27的答案是5,因为你可以存储在5位的最大值是2 ^ 5 - 1 = 31d = 11111b。包括0,您可以在5位变量中存储32个不同的值。所以你的结果是37mod32 = 5.
最重要的位是具有最高值的位,在您的情况下是最左边的位。该位(如果为1)的十进制值为16。
“进位”是位于MSB旁边的位,而不再是变量本身。所以说你的五位变量中的“第六位”。它的初始值为0:
0 01010
0 11011 +
---------
1 00101 =
但结果值1.所以你“执行”a 1.这可以由计算机使用,即检测这种溢出。
如果您需要更多详细信息,请与我们联系。