首页  >  编程教程  >  编程问答  >  什么是补码?

什么是补码?

定义:

在计算机系统中,数值一律用补码来表示和存储。

表示方法:

正数的补码是其本身原码,也是其本身反码;负数的补码是在其原码的基础上,符号位不变,其余各位取反,最后再+1,也可以认为是在其反码的基础上,再+1。

举例:(4位二进制数)

真值原码反码补码真值原码反码补码
0000000000000-0100011110000
1000100010001-1100111101111
2001000100010-2101011011110
3001100110011-3101111001101
4010001000100-4110010111100
5010101010101-5110110101011
6011001100110-6111010011010
7011101110111-7111110001001

让我们尝试用补码进行加法运算!

例: 0001+0001=0010,1+1=2

     0000+0000=0000,0+(-0)=0

     0001+1111=0000,1+(-1)=0

由此我们知道,补码中-0不存在。



本文固定URL:https://www.dotcpp.com/qa/33

编程杂谈
编程基础
知识答疑