分数和浮点之间有什么区别?
-
29-09-2020 - |
题
我理解任何 fractact 是不是没有的Integers的商0 ,但在各种编程语言中跨越“浮动”术语(例如JavaScript),我误解了为什么它甚至需要它,我们不会说一分。
分数和浮子之间的差异是什么?
解决方案
计算机通常处理浮点数而不是分数。主要区别在于浮点数的准确性有限,但是执行算术的速度要快得多(并且是在硬件中自然支持的唯一非整数数字类型)。
浮点号以固定的精度存储在“科学符号”中,这取决于数据类型。粗略地说,它们以 $ \ alpha \ cdot 2 ^ \ beta $ ,其中 $ 1 \ leq \ alpha <2 $ , $ \ beta $ 是一个整数,两者都存储在固定数量的比特中。这限制了 $ \ alpha $ 和 $ \ beta $ :if $ a $ 比特存储“math-container”> $ \ alpha $ (作为 $ 1。 x_1 \ ldots x_a $ )然后它始终表达一个分数,其分母是 $ 2 ^ a $ ,如果 $ \ beta $ 使用 $ b $ 比特,然后它始终在 $ - 2 ^ {b-1},\ ldots,2 ^ {b-1} -1 $ 。
由于浮点数的准确性有限,这些数字的算术仅近似,导致数值不准确。在开发算法时,您必须牢记这一点。实际上是计算机科学中的整个区域,数值分析,致力于此类问题。
不隶属于 cs.stackexchange