如何解决“每位计算机科学家应该知道的有关浮点算法的知识”中最大的可表示浮点/微小错误
| 我相信论文“每位计算机科学家都应该知道的有关浮点运算的知识”中有一个小错误。 它声称 不太常见的情况是实数超出范围,即其绝对值大于 http://img219.imageshack.us/img219/7396/screenshot2011052714105.png http://img219.imageshack.us/img219/7396/screenshot2011052714105.png 这几乎是正确的,可表示的最大浮点数略小于该数,而大于该数的实数超出范围 http://img707.imageshack.us/img707/9236/screenshot2011052714045.png http://img707.imageshack.us/img707/9236/screenshot2011052714045.png 对?解决方法
我不会被图像打扰,所以我将为\“ beta \”写b,为\“ e_max \”写m。
所以说b是基数,p是精度,m是最大指数。
然后我认为您想要的表达式是:
(1 - b^(-p)) * b^m
例如,对于精度为4位且最大指数为12的以10为底的基数,得出:
.9999 * 10^12
...哪个是对的。
请注意,这对于IEEE浮点数来说并不完全正确,因为其中的前导\“ 1 \”位是隐式的。我隐约记得当指数均为1时的一些奇怪之处。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。