首页 > 其他 > 详细

位运算的特殊运用

时间:2014-08-05 09:37:39      阅读:279      评论:0      收藏:0      [点我收藏+]

位运算的特殊运用

位运算主要有,&,|,~,^等几种,这几种在编程方面能极大地优化程序,所以掌握他们势在必行,所以就总计一下。

&:

主要可以用来求某数的其中一个二进制位,常用的有求某个数转化为二进制后的最后一位。

可以用 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;也能实现不借助中间变量来实现两者的转化)。 

 

位运算的特殊运用,布布扣,bubuko.com

位运算的特殊运用

原文:http://blog.csdn.net/ice_alone/article/details/38379297

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