十进制的小数怎么化为二进制?例如十进制数0.82如何化为二进制?

1个回答

  • 小数点之前用模2取余法:

    10(D) = 1010(B) 这个就不用给你讲了吧

    小数点之后用乘2取整法:

    0.5(D) = 0.1(B)

    按如下算法进行:

    1)首先给小数部分乘2,如果小数点前为1;则计1,为0,则计0.

    2)再对剩下的小数部分乘2,再计出1或0.

    3)重复以上步骤,直至达到需要的精度.

    例如:0.2887转化为二进制数:

    0.2887 * 2 = 0.5774 ------------- 计 0

    0.5774 * 2 = 1.1548 ------------- 计 1

    0.1548 * 2 = 0.3096 ------------- 计 0

    0.3096 * 2 = 0.6192 ------------- 计 0

    0.6192 * 2 = 1.2384 ------------- 计 1

    ………………(算到需要的精度为止)

    所以:0.2887(D)=0.01001…(B)