From: Tanaka Akira Date: 2003-04-23T17:55:26+09:00 Subject: [ruby-dev:20070] Re: Roundoff problem with Float and Marshal In article <1051053939.850613.18822.nullmailer@picachu.netlab.jp>, matz@ruby-lang.org (Yukihiro Matsumoto) writes: > Rudiは[ruby-talk:69878]でstrtodがちゃんとしてればそもそも > marshalはいじらなくてよいのでは(と彼の友達が考えた)と書いて > ます。また、現在の実装のpowersOf10のテーブルを使うのは不正確 > だとも。実際のところどうなんでしょう。 David Goldberg, What Every Computer Scientist Should Know About Floating Point Arithmetic ACM Computing Surveys, Vol.23, No.1, March http://citeseer.nj.nec.com/goldberg91what.html # の日本語訳 # 「すべての計算機科学者が浮動小数点演算について知っておくべきこと」 # http://urr3.cs.uec.ac.jp/ohkubo-k/papers/index.html を見てみたら、倍精度なら 10進で 17桁保存しとけば元に戻せると書いてあり ました。 「どうやって」正しい(もっとも近い) 17桁を生成し、また、「どうやって」 正しい(もっとも近い)倍精度浮動小数点数を生成するのかは別の問題としてあ りますが。 -- [田中 哲][たなか あきら][Tanaka Akira]