【发布时间】:2017-11-18 06:04:36
【问题描述】:
我知道base-2和base-10的基本定义,但我想知道它们在性能和速度方面有什么区别。
例如:
在C# 中,数据类型double 是Base-2,数据类型decimal 是Base-10
这样double 的计算速度非常快,decimal 的速度比双倍慢 10 倍。
我不明白为什么会这样,所以请任何人向我解释一下,并提前感谢:)
【问题讨论】:
-
二进制 PC 中的二进制运算显然比其他基数快得多,就像人类以 10 为基数思考二进制算术一样。此外,通常没有十进制运算的指令,因此它们必须由更慢的软件模拟。可能重复:Decimal vs Double Speed
-
我已经足够大,可以记住二进制浮点计算是在软件而不是高度优化的硬件中完成的日子了>
标签: c# double decimal computer-science