5

十进制数学是否使用 FPU?

我认为答案是肯定的,但我不确定,因为小数不是浮点数,而是固定精度数。

我主要在寻找.NET,但一般的答案也会很有用。

4

2 回答 2

3

关于 .NET,更具体地说是 C#,不,System.Decimal不使用 FPU,因为该类型是在软件中模拟的。

此外,System.Decimal 它是一个浮点数,而不是数据库中常见的固定精度数。该类型实际上是使用 10 作为其基数的十进制浮点数,而不是使用 2 作为其基数的二进制浮点数(即System.Singleor )。System.Double如果您尝试存储无法精确表示的分数,例如 1/3,它仍然存在相同的精度问题。

于 2012-02-16T15:04:19.640 回答
1

是的,现代语言一般都支持浮点数学整数数学,仅此而已;没有对定点、BCD 等的直接支持。浮点数学将使用浮点处理器指令完成;现代架构不包括单独的 FPU。

于 2012-02-06T17:54:39.877 回答