c语言怎么用移位来表示除以9

对X左移右移可以得到:

…X/8,X/4,X/2,X,2X,4X,8X…

这些是我们有的,那么要求X/9,实际上很容易想到把1/9用2的幂次的和表达出来!

1/9在二进制里是0.000111000111000111…(好像是,我大概没算错吧)

那么1/9=1/16+1/32+1/64+1/1024+1/2048+1/4096+…

接下来左移右移得到X/16,X/64…然后全加起来就行了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值