~ 按位取反运算符
换位取反运算符:
A = 5
~A = -6
A = -5
~A = 4
所有正整数的按位取反是其本身+1的负数
所有负整数的按位取反是其本身+1的绝对值
零的按位取反是 -1
转换:
负数部分:
原码和反码的相互转换:符号位不变,数值位按位取反
原码和补码的相互转换:符号位不变,数值位按位取反,末位再加1
已知补码,求原码的负数的补码:符号位和数值位都取反,末位再加1
正整数的原码、反码和补码都一样;
#原码即数值的二进制代码三十二位 首位位符号位
-19的二进制 1…… 0010011
反码 0…… 1101100 反码转补码 +1
补码 0…… 1101101
按位取反 0…… 0010010(转原码为十进制位18)
~-19=18
9的二进制
0…… 0001001(原) 正数的原码反码补码一样
1…… 1110110 反补一样
1…… 0001001 转原码时候 这里要+1
1…… 0001010 换位取反
有符号的十进制即为 -10