黑马程序员技术交流社区

标题: 二进制数小数部分如何转换成十进制数 [打印本页]

作者: S捭K阖Y    时间: 2014-5-20 20:55
标题: 二进制数小数部分如何转换成十进制数
本帖最后由 S捭K阖Y 于 2014-5-21 23:54 编辑

二进制数小数部分如何转换成十进制数,老师只讲了整数部分,可是小数部分用那个方法不行,例如,二进制数1.11如何转化为十进制数
作者: 戒惜舍得    时间: 2014-5-21 06:05
  这个问题这么长时间没有回复????
  ………………………………

整数和小数分别转换。
整数除以2,商继续除以2,得到0为止,将余数逆序排列。
22 / 2  11 余0
11/2     5  余 1
5 /2      2  余 1
2 /2      1  余 0
1 /2      0  余 1
所以22的二进制是10110
小数乘以2,取整,小数部分继续乘以2,取整,得到小数部分0为止,将整数顺序排列。
0.8125x2=1.625 取整1,小数部分是0.625
0.625x2=1.25 取整1,小数部分是0.25
0.25x2=0.5 取整0,小数部分是0.5
0.5x2=1.0 取整1,小数部分是0,结束
所以0.8125的二进制是0.1101
十进制22.8125等于二进制10110.1101
作者: S捭K阖Y    时间: 2014-5-21 21:00
戒惜舍得 发表于 2014-5-21 06:05
这个问题这么长时间没有回复????
  ………………………………

谢谢,写的很详细,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2