-1用2进制表示
1 000000000000001 //最高位为符号位
符号位不变 各位求反
1 111111111111110
+ 1
11111111111111111
这个很容易理解的。 在C/C++中 就是 cout<<(~1 + 1)<
观楼主英俊潇洒,风流倜傥,必当世豪杰,大侠闲暇之余,关注0x30百度贴吧,必成千秋霸业,建不世之功。
-1二进制码 1000 0000 0000 0001
反码 1111 1111 1111 1110
补码 = 反码 + 1 1111 1111 1111 1111
1的补码是0000000000000001反码是1111111111111110补码是111111111111111
额 -1原码10000000000000001 反吗11111111111111110 所以补11111111111111111