0
点赞
收藏
分享

微信扫一扫

为什么使用补码?


文章目录

  • ​​补码(Two's complement)是什么​​
  • ​​对负数求二进制补码的一般过程​​
  • ​​为什么使用补码​​
  • ​​拓展阅读​​

补码(Two’s complement)是什么

大多数计算机使用补码来表示负数。这种方法在执行数学运算(如加法和减法)时更有效。
位的最左边叫最高有效位 (the most significant bit or MSB) : 用于指示正​​数或负数,其余位用于存储数字的实际大小。正数总是以 0 开头。

四位正数的补码数为 0000 = 0、0001 = 1~ 0111 = 7。最小的正数是最小的二进制能表示的值。

负数总是以 1 开头。最小的负数是最大的二进制值。1111 是 -1,1110 是 -2,1101 是 -3,直到 1000 代表 -8。

对负数求二进制补码的一般过程

  1. 找到要表示的负数的正二进制值。
  2. 在数字前面加一个 0,表示它是正数。
  3. 取反
  4. 将此数字加 1。

使用二进制补码求 -1

1 = 001
前面加0变成0001
取反 变成1110
加 1 = 1111 ( -8 + 4 + 2 + 1 = -1 )

或者:
2^8 - 1 = 10000 - 1 = 1111

使用二进制补码求 -4

4 = 100
前面加0变成0100
“倒置”变成1011
加 1 = 1100 ( -8 + 4 = -4 )

或者:
2^4 - 4 = 10000 - 0100 = 1100

为什么使用补码

因为使用补码,可以把减法改成加法。实际电路中,只有加法器。

为什么使用补码?_深度学习


减一个数,直接加他的补码

拓展阅读

​​补码​​​​为什么​​


举报

相关推荐

0 条评论