基本概念
&按位与 有0则0
| 按位或 有1则1
~ 所有位 按位取反
^ 异或 同则0,不同则1;
n<<i n左移i位(二进制) 等价于 n*2的i次方
n>>i n右移i位(二进制) 等价于 n/(2的i次方) //往小取整
常用操作
1001 0110
//最右边是第0位
- 得到x的第i位 (x>>i)&1
- 将x第i位变1 x|(1<<i)
- 把x第i位取反 x^(1<<i)
//如果第i位为 0,0^1为 1,1^1则为 0
4. 判断奇偶 x&1 //奇数则返回1,偶数返回0
return(-1<<(32-i))^n; 通过"^"来使某些位取反;