3

乘2取整法介绍

举例:0.35转换成二进制

  0.35×2=0.7 ······ 取0(d1)
  0.7×2=1.4 ······ 取1(d2)
  0.4×2=0.8 ······ 取0(d3)
  0.8×2=1.6 ······ 取1(d4)
  0.6×2=1.2 ······ 取1(d5)
  0.2×2=0.4 ······ 取0(d6)
  ·····
  直到满足规定的位数为止
  
  所以(0.35)10=(0.d1d2d3d4d5d6)2=(0.010110)2
  

这个方法不难掌握,就是有点不好理解,有人用公式法做了解释。

具体解释如下:
图片描述

这个解释很好,但公式在思维上总是显得有点不直观。接下来说一说如何直观地看待乘2取整法。

直观理解

这里先说一下关于小数的理解,小数是数量达不到基本单位1的情况下的表达。

以苹果的数量举例,假如你有3个苹果,我可以说你有3个苹果。但是假如你只有半个苹果,我就可以说你有1/2个苹果。
在十进制中,单位苹果被切成10等份(因为10个0.1个苹果放在一起时,就会进位成为1个整苹果)。
在二进制中,单位苹果被切成2等份(只要2个0.1个苹果放一起就会进位成1个整苹果)

这里无论十进制还是二进制,基本单位1是相等的,也就是说是一样的,都是1个整苹果,只是在小数中分割等份的数量不同而已。

D表示十进制,B表示二进制。

对于一个十进小数,例如0.7D,它是0.7个整苹果,而1个整苹果在二进制中有2等份(也就是有2个0.1B),那么0.7D个苹果在二进制中有0.7×2=1.4个0.1B;
还剩0.4个0.1B,一个0.1B包含2个0.01B,那么0.4个0.1B包含0.4*2=0.8个0.01B,整数部分0即是二进制小数的第二位;
还剩0.8个0.01B...
...
直到满足规定的位数为止。

在其它进制转换中此思想依然适用。


我是敌法师
16 声望9 粉丝

引用和评论

0 条评论