怎样把二进制小数转十进制?将(10.10111)2转化为十进制咋转化?
网友回答
【答案】 您是问原理?还是想要处理程序?
如果是问算法原理,那么以(10.10111)2为例,转换算法就是
1*2^1 + 0*2^0 + 1*1/2 + 0*1/(2^2) + 1*1/(2^3) + 1*1/(2^4) + 1*1/(2^5) = 2.71875
如果是想要处理程序,那么:
【一】如果您输入的是整数,可以看一下下面的资料:
http://zhidao.baidu./question/337382689.html?an=0&si=2
这个资料中给出的程序,可以将输入的二进制整数转换成unsigned long型整数的计算机内部值,于是,只要采用普通的普通的输出语句如printf(%lu…………),就可以把它按十进制输出。同时,这个资料中也给出了按二进制输出的程序。
【二】如果您输入的是带小数的,或虽不带小数,但希望转换成浮点形式的内部值,可以看一下下面的资料:
http://zhidao.baidu./question/333313559.html?an=0&si=10
这个资料中给出的程序,可以将输入的二进制整数转换成double型的计算机内部值,于是,只要采用普通的普通的输出语句如printf(%lf…………),就可以把它按十进制输出。