浮点数转换为二进制,小数部分怎么转换?

发布网友 发布时间:2022-04-20 03:17

我来回答

3个回答

热心网友 时间:2022-07-13 00:05

乘2取整法,即每一步将十进制小数部分乘以2,所得积的小数点左边的数字(0或1)作为二进制表示法中的数字,直到满足你的精确度为止。
转换过程:
0.874的转换过程(取精度为6位):
0.874*2=1.748
小数点左边为
1
0.748*2=1.496
小数点左边为
1
0.496*2=0.992
小数点左边为
0
0.992*2=1.984
小数点左边为
1
0.984*2=1.968
小数点左边为
1
0.968*2=1.936
小数点左边为
1
十进制:123.874
二进制:1111011.110111

热心网友 时间:2022-07-13 00:05

十进制的整数部分转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
十进制小数部分转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。
例如302.625
先算整数部分302
302/2
=
151
余0
151/2
=
75
余1
75/2
=
37
余1
37/2
=
18
余1
18/2
=
9
余0
9/2
=
4
余1
4/2
=
2
余0
2/2
=
1
余0
故二进制为100101110
再算小数部分0.625
0.625
x
2
1.25
取1
x
2
0.5
取0
x
2
1.0
取1
故二进制为0.101
最后,将整数部分和小数部分合起来写,即302.625转换成二进制数为100101110.101

热心网友 时间:2022-07-13 00:06

小数部分计算方法:
乘2取整法,即每一步将十进制小数部分乘以2,所得积的小数点左边的数字(0或1)作为二进制表示法中的数字,直到满足你的精确度为止。
0.874的转换过程(取精度为6位):
0.874*2=1.748
小数点左边为
1
0.748*2=1.496
小数点左边为
1
0.496*2=0.992
小数点左边为
0
0.992*2=1.984
小数点左边为
1
0.984*2=1.968
小数点左边为
1
0.968*2=1.936
小数点左边为
1
十进制:123.874
二进制:1111011.110111

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
20.7334s