c语言中的小技巧(位运算)

1,关于 2的次方的数 求余 都可以用 & 替换。

eg:                15 % 2 =  1       15  % 4=3    15 %  8=7  

          15  &  1 =  1       15 & 3=3    15 & 7 =7 

   由上可以得出:  2的n次方,就用被余数和 n个1(2进制)相与即可

2,关于 数和一个2的次方的除法,乘法,可用位移替换。

                15 x 2 =   (15<1)  

      15 x 2的n次方 = (15>n) 

      15 / 2 =  (15>1)

      15/2的n 次方 = (15>n)

注意,唯一的位数不可超过该数的位数  比如32位系统下的int型变量,位移当然不能超过32

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值