带小数点的十进制如何划为二进制? | 您所在的位置:网站首页 › 3d7a转换成二进制 › 带小数点的十进制如何划为二进制? |
89.375分成整数89和小数0.375两部分,分别转换成二进制数1011001、0.011,然后合在一起即得结果1011001.011。 一、 十进制整数到二进制整数转换可以使用短除法,即“二除取余法”。 例如,用“2除取余法”把十进制整数13转换为二进制数。 实际操作算式: c/c++代码片段: //大于0的整数转换成2进制数 int n=13, p[100], i; //代码 for(i=0; n>0; i++) { p[i]=n%2; n=n/2; } for(i=i-1;i>=0;i=i-1) cout乘2取整法逐次破解,0.375*2破解p1、0.75*2破解p2、0.5*2破解p3......所以:十进制数(0.375)等于二进制数(0.011)。 有限位数的十进制小数,转换成的二进制小数可能是无限位数的,这时可按要求的精度取有限位的结果即可,最后一位是其后面位“0舍1入”的结果。 把0.375转换成二进制小数的程序: #include using namespace std; int main() { double x=0.375; int P[10]; x=x*2; P[1]=x; //乘2取整操作 x=x-P[1]; //去掉整数部分 x=x*2; P[2]=x; //乘2取整操作 x=x-P[2]; //去掉整数部分 x=x*2; P[3]=x; //乘2取整操作 x=x-P[3]; //去掉整数部分 cout |
CopyRight 2018-2019 实验室设备网 版权所有 |