basic-theory
按位取反操作符
正数9:
原码为:0000 1001
补码为:0000 1001
反码为:0000 1001
再例如: -2
求原码:1111 0010 (前面4个1表示符号位)
求反码:1111 1101 (符号位不变,其余各位求反)
求补码:1111 1110 (符号位不变,末位+1)
所以-2在内存中存放为: 1111 1110
内网网段
Last updated
正数9:
原码为:0000 1001
补码为:0000 1001
反码为:0000 1001
再例如: -2
求原码:1111 0010 (前面4个1表示符号位)
求反码:1111 1101 (符号位不变,其余各位求反)
求补码:1111 1110 (符号位不变,末位+1)
所以-2在内存中存放为: 1111 1110
Last updated
原码为0000 1001,
反码为0000 1001,
补码为 0000 1001,
对其取反 1111 0110(符号位一起进行取反,这不是反码更加不是最终结果,只是补码的取反仅此而已)
我们还需要把他转换成原码,因为是负数所以进行负数补码到原码的逆运算
先减1得反码: 1111 0101
取反得原码:1111 1010,(**反码和原码是一个相对的概念,对反码取反就是原码。**取反过程符号位是不变的哦)
前面4个1是符号位,1是负数,既得十进制:-10-10的原码:1111 1010
-10的反码:1111 0101 (符号位不变)
-10的补码:1111 0110 (符号位不变,末位+1)
补码取反:**0000 1001** (符号位一起取反)