IT@程序员猿媛

为什么二进制数的补码等于按位取反再加1

2019-04-24  本文已影响29人  日更专用小马甲

昨天聊到了补码的问题:在4进制中,原码1的补码是3。减去原码和加上补码的结果是一样的。大学时候,对于二进制数,求补码有个口诀:按位取反再加一

为什么呢?还是以4进制为例,为了直观起见,还是先把图贴上。

减法和补码

补码又可以表示为进制能表达的最大数减去原码再加一,对于二进制表现形式能表达的最大数(不考虑负数)是多少?3。写成2进制是11。

因为3的每一位都是1,所以减去另一个数字时,跟取反的结果是一样的。剩下的例子也就不再赘述了。

还有一个在已知补码的情况下,还有一个获得原码的口诀叫:按位取反再加一

上一篇 下一篇

猜你喜欢

热点阅读