<<,>>的含义
<< (左移):x<<y==x*(2^y)
>> (右移):x>>y==x/(2^y)
x>>=1 等价于 x/=2
x<<=1 等价于 x*=2
1<<x 等价于 2的x次方
&=,|=,^=等的含义
&=:按位与后赋值
如a=0b101,b=0b001,a&=b后,a为101;
|=:按位或后赋值
^=:按位异或后赋值
~=:按位取反后赋值
if(x&1)... 等价于 if(x%2==1)... 判断x是否是奇数
原码,反码,补码
原码:原码符号位整数为0,负数为1。
反码:正数的反码与原码一致,符号位为0
负数的反码是对原码按位取反,符号位为1(不变),
补码:正数的补码与原码一致。
负数的补码是该数的反码加1,符号位为1(不变)。
各进制前缀:
二进制:0b或0B
八进制:0
十进制:无前缀
十六进制:0x或0X