首页 > 其他 > 详细

位运算

时间:2019-08-12 13:33:21      阅读:70      评论:0      收藏:0      [点我收藏+]

位运算 Bitwise operations

技术分享图片

由于位运算直接对内存数据进行操作,不需要转成十进制,因此处理速度非常快。

 

常见位运算符:

技术分享图片

 

技术分享图片

 

编程常用的位运算操作

x & 1 == 1 or == 0  判断 x 的二进制最后是 1 还是 0,即判断奇偶性(x % 2 == 1)

x = x & (x - 1)  清零最低位的 1。例如 110101 & 110100 得到110100;110100 & 110011 得到11000

x & -x  得到最低位的1。 -x 是取反再加1

x & ~x  得到 0

 

更为复杂的位运算操作

1. 将 x 最右边的 n 位清零:x & (~0 << n)

2. 获取 x 第 n 位值:(x >> n) & 1

3. 获取 x 第 n 位的幂值:x & (1 << (n-1))

4. 仅将第 n 位置为 1:x | (1 << n)

5. 仅将第 n 位置为 0:x & (~(1 << n))

6. 将 x 最高位至第 n 位(含)清零:x & ((1 << n) - 1)

7. 将第 n 位至第 0 位(含)清零:x & (~((1 << (n + 1)) - 1))

 

位运算

原文:https://www.cnblogs.com/chaojunwang-ml/p/11338890.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!