1

浮動小数点値の実装と制限については認識しています - おそらくリンクしようとしている論文を読みましたが、浮動小数点値に使用すべき範囲がわかりません。

実数の有限範囲で値を表現したい。概念的には、-1 から 1 です。浮動小数点値 -1 から 1 を使用することもできますが、仮数ビットを無駄にしているのでしょうか?

この質問はありましたが、決定的な答えはありませんでした。

4

1 に答える 1

4

浮動小数点の主なポイントは、ポイントが浮動することです。

つまり、1 付近でも 256 付近でも相対的な精度が同じであることを意味します。ほとんどのアプリケーションでは、数値をある範囲または別の範囲にスケーリングしても意味がありません。

非常に具体的で気難しい状況では、スケーリングする理由がある場合があります。

1 つは、巨大なダイナミック レンジが必要な場合です。数値が [-1, +1] の場合、ゼロ以外の最小の数値はIEEE 754 64 ビット バイナリで2 -1074になります。ただし、精度は低下します。完全な精度を持つ最小の数値は 2 -1022になります。普通ならこれで十分です。1 が観測可能な物理現象 (観測可能な宇宙の質量など) に対応する場合、2 -1022は観測可能なしきい値を下回ります (約 10 -223です)。倍の電子の質量)。物理的なものについては、それほど小さいものを計算しても意味がありません。一般に、数学者だけが関心を持っています。特別な数学的アプリケーションを使用している場合、スケールを [-1, +1] から [-2 1023 , +2 1023 ] のように大きなものに変更すると、何らかの利点が得られる可能性があります。(ただし、オーバーフローのない算術演算の余地を残しておいてください。)

もう 1 つは、相対誤差が重要であり、浮動小数点の精度がニーズをほとんど満たしていない状況です。1.1 付近の数値を表す相対誤差は、0.9 または 1.9 付近の数値を表す相対誤差よりも大きくなります。これは、各指数範囲内で (対数ではなく) 線形の仮数を使用して、数値が浮動小数点で表現される方法によるものです。したがって、1.1 付近で利用可能な最小の増分は 1.9 付近で利用可能な増分と同じですが、1.1 よりも 1.9 の方が小さい部分です。これは、浮動小数点の事実上すべての使用において問題にはなりません。これは、高品質のソフトウェアを保証するためにエラーの非常に慎重な評価を行う必要がある数学ライブラリなどの限られた状況でのみ発生する傾向があります。

要約: 範囲を気にする必要はありません。浮動小数点を浮かせます。

于 2013-01-01T19:09:28.980 に答える