From: Tadashi Saito Date: 2007-01-17T23:20:38+09:00 Subject: [ruby-list:43131] Re: 浮動小数点を比較するには こんばんは。斎藤です。 On Tue, 16 Jan 2007 01:41:59 +0900 NISHIMATSU Takeshi wrote: > > ずっと見ててもやっぱり分からないので、どなたか教えていただけるとありがた > > いです。これはBigDecimalを使っても、やっぱり困る場面なのでしょうか? > > 測量では三角関数(や、さらには球面三角関数も?)なんかが出てくるので、 > どんなもんでしょう。測量学にも誤差の議論があったと思います。測量中に なるほど。球面…は存じませんが少なくとも三角関数が絡むならば、無理数が出 て来るので小数では正確に表現できませんね。 # > 三脚に触るなと怒られたり(関係ないですが;-)。 # # 自分も昔、地図を作っているらしき測量中の人を道端で何回か見かけました。 # 小さいながらも、なんか几帳面に測ってるので近付いちゃだめなんだな、とか # くらいは分かりました (^^; しかしながら、木村さんが[ruby-list:43127]で挙げて下さった通り、「十進→二 進の打切りが原因の誤差」が問題になる場面ではBigDecimalが効果を発揮する ように思います(十進小数同士が厳密に等しいかどうか比較できます)。計算機の 内部表現と脳内モデルの不一致に悩まされる事はありません。 > 浮動小数点演算については、 > > David Goldberg > 西村恕彦訳 > 『浮動小数点演算について計算機科学者は何を知っておくべきか』 > 共立出版のbitかbit別冊??? (snip) > が詳しくて、かつ一晩で読める分量なのでオススメです。「言語仕様は、理想的には ご紹介、ありがとうございます。木村さんが[ruby-list:43129]で示して下さっ たSUNのサイト、後で読んでみます。 > IntelのCPUの浮動小数点演算がIEEE標準からちょっと外れることについては、Pentium > Processor Family Developer's Manualを見るのが確実だと思います。 こちらもPDFから読んだのですが、1149.1(JTAG?)なるものしか載っていなかった ようです。日本語になりますが、以下から見る事のできる「ソフトウェアデベ ロッパーズマニュアル」なる方には「IEEE規格754」の記載が複数ありました。 http://www.intel.co.jp/jp/developer/download/ と、勉強会会場にしてしまってごめんなさい m(_ _)m -- 斎藤ただし