Board logo

标题: 老师们请教个问题~~ [打印本页]

作者: liuzunk    时间: 2010-5-23 21:10     标题: 老师们请教个问题~~

《C++从入门到实践》里【示例2-1】为什么0.110111×2的100次方呢?我看网上别的教材里说的都是规格化的时候小数点移到第1、2位,指数是移动的位数,这里1101.11的规格怎么是0.110111×2的100次方呢?请老师帮助讲解下,谢谢了
作者: fwbook    时间: 2010-5-24 07:55

你好。实际书上讲解和你看到教材都是没有错的。关键是前提不一样。

网上教材说的是十进制下的移位。而书中这里讲解的是二进制数字的移位。

我们这里移动的是小数点。而小数点概念是十进制所特有的概念。移动一次小数点,就意味数字要增大10倍,或者减小为十分之一。

你可以把书中的那个例子手工计算一下。
作者: liuzunk    时间: 2010-5-24 11:43

本帖最后由 liuzunk 于 2010-5-24 11:51 编辑

老师,你好,先谢谢你了!
我在百度文库看的资料好像也是说的2进制啊,还有你说的怎么手工计算啊,能不能讲详细啊~
这是我看的百度文库上的网址:
://wenku.baidu.com/view/6800be1e650e52ea55189845.html
作者: fwbook    时间: 2010-5-24 13:18

这里二进制移动了四位,那应该是2的四次方。但是这里采用的二进制方式,所以4也必需转化为2进制,所以就是100。

可能对你产生理解困惑的地方,就是100是二进制的100,还是十进制的100。你给出的那个网页中,采用十进制的9来表示。而作者为了照顾后面写阶码的考虑,直接使用了二进制的写法。
作者: liuzunk    时间: 2010-5-24 22:22

谢谢,非常感谢您的耐心,祝您全家幸福美满!~
作者: miaoxiaohua    时间: 2010-7-6 18:53

不懂你说的什么




欢迎光临 万卷图书 (http://wanjuanchina.net/) Powered by Discuz! 7.0.0