怎么把十进小数转换成二进制数?

如题所述

第1个回答  2022-08-13

1、十进制小数转换成二进制小数采用乘2取整,顺序排列法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。

2、乘2取整法,即将小数部分乘以2,然后取整数部分,剩下的小数部分继续乘以2,然后取整数部分,剩下的小数部分又乘以2,一直取到指定位数的小数部分 。

3、余下的值为零即止。如果永远不能为零,就同十进制数的四舍五入一样,按照要求保留多少位小数时,就根据后面一位是0还是1,取舍,如果是零,舍掉,如果是1,向入一位。换句话说就是0舍1入。读数要从前面的整数读到后面的整数。

扩展资料:

小数部分从小数点位置开始:1/2,1/4,1/8,1/16。即:1010.1011=>8+2+1/2+1/8+1/16 

(“^”代表幂)

1101.0111=>1*2^3+1*2^2+0*2^1+1*2^0+0*2^(-1)+1*2^(-2)+1*2^(-3)+1*2^(-4) 

小数部分是如果小数点后第一位为1的话就加上0.5(即1/2),第二位加上0.25(1/4),第三位加上0.125(1/8),接着就是1/16,1/32,1/64.无论算出多少都是正确的。你也可以后过来算,你算了十进制数后,就拿小数部分*2。 

如7/16=0.4375 

0.4375*2=0.875 整数部分为0 即当前二进制数值为:0.0 

0.875*2=1.75 整数部分为1 即当前二进制数值为:0.01 去掉1后继续运算。 

0.75*2=1.5 整数部分为1 即当前二进制数值为:0.011 去掉1后继续运算。 

0.5*2=1.0 整数部分为1 即当前二进制数值为:0.0111 去掉1后为0,运算结束。

0.4375的二进制数为:0.0111

相似回答