位运算

位运算总结:
基础运算:
1.and运算(&):两个数二进制对应位同为1才得1,否则得0,应用主要是取一个数二进制某一位
2.or运算(|);  两个数二进制对应位同为0才得0,否则得1,应用主要是改变一个二进制数的某一位
3.异或运算(^);  0和1异或0不变,异或1则取反。常用来对一个数二进制某一位进行取反,两次异或同一个数字得到原来的数字
4.not运算(~);把每一位都取反
5.左移运算(<<) 左移k位,相当于乘以2^k
6右移运算(>>) 右移k位,相当于除以2^k,位运算提高算法效率

原文地址:https://www.cnblogs.com/xuejianye/p/5664833.html