二进制小数快速转成十进制小数的方法

例:0.0100101二进制转换成十进制为0.2890625。

直接说方法:

将小数部分提取出来为0100101并将其看成二进制整数,转换成十进制就是1+4+32=37,答案即为37/128=0.2890625。128为二进制整数最高位64的两倍。

再如0.101100100101二进制转换成十进制为0.696533203125。

还是将小数部分提取出来为101100100101当作二进制的整数,十进制就是1+4+32+256+512+2048=2853,2853/4096=0.696533203125。4096为最高位2048的两倍。

本人语言匮乏,实在不知该怎么解释。(如果想要想清楚我觉得可以从正方形的占比角度思考,上述方法的除数就是占有面积,被除数就是总面积,还有小数部分的值总是小于1,1就是最高位的两倍,因为111(二进制)就是2³*2-1),总同样我也不知道是否有人解释过这样的方法,但我在网上找二进制小数转十进制方法时总觉得有些繁琐。也没见到像我这样的方法(或许是我找的不全),于是在这里分享了自己的做法。

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值