0的原码、反码和补码都一样(即0000 0000 )
-1的计算机存储:1111 1111
1000 0001(原码) 符号位不变,后7位取反==>1111 1110(反码)加 1 ==>1111 1111(补码)
补码的一个良好特性就是,对负数的补码表示做补码运算就可以得到其对应的原码 ,正如十进制运算中负负得正一样。
1111 1111(补码) 符号位不变,后7位取反==> 1000 0000 加 1 ==> 1000 0001
-2的计算机存储:11111110
1000 0010(原码) 符号位不变,后7位取反==> 1111 1101(反码)加一==> 1111 1110(补码)
补码的一个良好特性就是,对负数的补码表示做补码运算就可以得到其对应的原码 ,正如十进制运算中负负得正一样。
1111 1110(补码)符号位不变,后7位取反==> 1000 0001 加 1 ==> 1000 0010
-127的计算机存储:10000001
1111 1111(原码) ==> 1000 0000(反码)加 1 ==> 1000 0001(补码)
1000 0001(补码)后7位取反==> 1111 1110 加 1 ==> 1111 1111
-128的计算机存储:10000000
-128的补码和原码一样都是1000 0000
原码1000 0000 (-128,高进位被舍去 1000 0000 1000 0000)
反码0111 1111(-128,高进位被舍去 1111 1111 0111 1111)
补码1000 0000(高进位被舍去 1111 1111 1000 0000 )
1000 0000(补码) -> 按位取反 -> 1000 0000 0111 1111 -> 加 1 -> 1000 0000 1000 0000
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。