这更像是一个硬件问题,但我无法弄清楚这个问题。我以为是 214,但由于左边的第一位,我不太确定。
问问题
7574 次
3 回答
2
因为它是一个 2 的补码,所以第一位是一个意味着它是一个负数。
该值为 214 - 256 = -42。
它也可以计算为 -(~214 + 1) = -(41 + 1) = -42。
二进制是 -(~11010110 + 1) = -(00101001 + 1) = -00101010。
于 2013-02-18T00:50:56.797 回答
1
翻译很简单:
1:从 x 中减去 1
11010110-00000001=11010101
2:反转它
00101010
3:计算二进制到十进制(但忽略第一位)
2+8+32 = 42
4:记住原始值的第一位(== 1)如果1 =>反转它=> -42
于 2013-02-18T00:59:19.510 回答
1
你可以说它是一个负数,因为1
在最左边的位位置有一个。获得幅度的一种方法是反转所有位,然后添加1
.
11010110
00101001 <= inverted
00101010 <= +1
这个结果是十进制42
的,所以原来的值是代表-42
。
于 2013-02-18T00:59:45.847 回答