首页 > 代码库 > 位运算的特殊运用
位运算的特殊运用
位运算的特殊运用
位运算主要有,&,|,~,^等几种,这几种在编程方面能极大地优化程序,所以掌握他们势在必行,所以就总计一下。
&:
主要可以用来求某数的其中一个二进制位,常用的有求某个数转化为二进制后的最后一位。
可以用 a&(-a)进行快速求解
|:
可以将某个数转化为二进制后的某些位设为1,通过该数与想要相应位数为1其他位为零的数进行或运算即可
~:
可以间接转化某个数:如:求32位的最大值。可以用~0u=2^32-1;
^:
异或则可以用来不借助中间变量来实现两个数的交换,还可以将一个数的某些位取反
例如:交换a和b 可以用 a=a^b;b=b^a;a=a^b;(还有一种方法,就是a=a+b;b=a-b;a=a-b;也能实现不借助中间变量来实现两者的转化)。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。