floating-point - 对双倍的 ULP 错误得到不正确的答案
问题描述
我正在了解双倍的 ULP 错误。我正在看一个示例,其中精确值和计算值是:
exact: 0|01111100010|1110101100000111111001001001011110001000000000111110
compt: 0|01111100010|1110101100000111111001001001011110001000000001000100
ULP 的答案是 6 ULP。我不太明白这是怎么回事。在 0111110 和 1000100 之间,我只能数 5 个双精度数:
0111110 - start
0111111 - 1
1000000 - 2
1000001 - 3
1000010 - 4
1000011 - 5
1000100 - end
我想我在这里犯了一些非常简单的错误。任何指针?
解决方案
显然我在计算时犯了一个错误。它应该是:
0111110 - 0
0111111 - 1
1000000 - 2
1000001 - 3
1000010 - 4
1000011 - 5
1000100 - 6 <---------- the expected answer.
推荐阅读
- neural-network - 如何处理NN训练过程的随机性?
- jquery - Jquery - 将默认值设置为动态生成的表单选择
- html - 当窗口宽度减小时,Div 宽度逐渐增加(带媒体查询)
- c - Windows:使用事件进行共享内存同步
- android - 必须在添加内容之前调用 requestWindowFeature()
- c# - 从套接字接收时确定可变消息长度的可靠方法
- tkinter - 如何在 Scrapy 中使用 Tkinter 或任何其他 python GUI
- wpf - 如何将输入绑定添加到 DataGrid 样式
- java - 如何缩放画布以使我的应用程序占据整个屏幕?
- view - 如何在 nattable 和 Jface 视图之间交叉更新视图