在计算机的数据表示中,只定义了正数的表示形式,并没有定义负数的表示形式,所以,负数一般都用补码的形式表示,正数的原码,反码和补码都相同,负数的反码是除符号位为1外,其他位全取反;补码就是“反码+1”
例子:
求出负数的反码
public class operationDemo8
{
public static void main(String[] args){
int x = -3;
System.out.println(x+"的反码是:"+~x);---- -3的反码是:2
}
}
分析:
-3原码:
1 00000000000000000..... 0000011
-3的反码
1111111111111111111111111100
-3的补码
11111111.......1111111111111101
对-3进行反码
000000000000000000000000010 --> ~ -3