2012年6月 4日

[ruby-list:48790] Re: Q:Floatの範囲は何で決まるのでしょうか?

> RubyのFloatの範囲を知っておこうと思って、下記の手遊びを実行してみました。
>
> (実行例ここから)
> irb(main):024:0> 1e+308.class
> => Float
> irb(main):025:0> 1e+309.class
> (irb):25: warning: Float 1e+309 out of range
> => Float

> (実行例ここまで)
>
> 気になったのは、Floatの範囲が何によってどのように決められているのかです。
> こんなに大きな数を扱う予定は、今のところありません。プラマイ50桁程度が扱えれば充分な計算をしています。
> しかし、Floatの範囲がもしかして環境依存していたりするのだったら、プアな環境で計算する時には注意しなくてはいけないな、と思った次第です。
> ご存じの方、教えていただければ幸いです。よろしくお願いします。

RubyのFloatは、crubyであれば、その裏側(?)にあるのは、C言語のdoubleです。

いまどきのたいていの環境であれば、仮数部52ビット、指数部11ビットの、
IEEE 754倍精度浮動小数点です。


投稿者 xml-rpc : 2012年6月 4日 21:53
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/110860
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。