14.2 浮点计算很奇怪,不同机器有不同结果

如果问题并不是那么简单, 那么回想一下, 电脑一般都是用一种浮点的格式来近似的模拟实数的运算, 注意是近似, 不是完全。

下溢、误差的累积和其它非常规性是常遇到的麻烦。

不要假设浮点运算结果是精确的, 特别是别假设两个浮点值可以进行等价比较。

也不要随意的引入“模糊因素”; 参见问题14.5。

这并不是C 特有的问题, 其它电脑语言有一样的问题。

浮点的某些方面被通常定义为“中央处理器(CPU) 是这样做的” (参见问题11.34), 否则在一个没有“正确” 浮点模型的处理器上, 编译器要被迫做代价非凡的仿真。

本文不打算列举在处理浮点运算上的潜在难点和合适的做法。

一本好的有关数字编程的书能涵盖基本的知识。

参见下面的参考资料。

参考资料: [K&P, Sec. 6 pp. 115-8]; [Knuth, Volume 2 chapter 4]; [Goldberg]。

永不止步步 发表于01-17 15:09 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

永不止步步
金币:67417个|学分:346191个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号