我理解任何 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 $

由于浮点数的准确性有限,这些数字的算术仅近似,导致数值不准确。在开发算法时,您必须牢记这一点。实际上是计算机科学中的整个区域,数值分析,致力于此类问题。

许可以下: CC-BY-SA归因
不隶属于 cs.stackexchange
scroll top