【发布时间】:2013-12-14 21:04:56
【问题描述】:
我想知道是否有研究和尝试设计类浮点 (IEEE754) 类型,其中小数部分和整数部分分别由 int 或 unsigned int 处理,或任何其他类型的设计这可能会导致使用整数实现类似浮点数。
我对一般性能、数值表示的有效范围等方面的研究特别感兴趣……以及您对此有何评论。
【问题讨论】:
-
您在寻找更好的精度吗?
-
当然这在历史上已经完成了。 (甚至在 1970 年我自己也做了一个版本,用于处理 IBM 7090 浮点值范围之外的数字。)但 IEEE 双精度“捕获”了大多数应用程序,其余的通常由某种“长十进制”处理类型。
-
查看各种语言的 Decimal 数据类型的各种实现。这可以为您提供很多有趣的信息。
-
@BitFiddlingCodeMonkey 不,我真的不关心有符号浮点数,而且浮点计算通常很昂贵,我想知道是否有一种方法可以使用基于 less 的新类型使浮点更便宜昂贵的整数,甚至更好的无符号整数。
-
同样,由于硬件支持,在大多数平台上没有什么比 IEEE 更“便宜”了。 (在某些情况下,浮点乘法/除法实际上比整数更快。)如果您确实需要在缺少 IEEE 的微控制器上提供类似的支持,那么执行您所描述的操作是有意义的。
标签: c++ c math integer ieee-754