From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?= ) Date: 1999-03-15T14:58:37+09:00 Subject: [ruby-dev:6321] Re: Precision in Mathematica (Re: Bigfloat) けいじゅ@日本ラショナルソフトウェアです. In [ruby-dev :6304 ] the message: "[ruby-dev:6304] Re: Precision in Mathematica (Re: Bigfloat) ", on Mar/12 23:40(JST) EGUCHI Osamu writes: >えぐち@エスアンドイー です。 > >keiju> >IEEE754 ですね、結局これと異なる解釈をする事は可能ですが、 >keiju> >H/W の FPU やライブラリの支援が得られなくなる、のが難点ですね。 >keiju> 確かにそういう話しもありますね. > >効率貧乏症なので、すぐこういう発想をしてしまいます ^^;; それもあるかも知れませんが, そのオブジェクトの実体がそういうポリシーを 持っているなら, それに従うというのもおかしくないですよね. >keiju> >keiju> >それにしても、 1.0%0.0 => 1.0 は思い当たるものがないです。 >keiju> >keiju> >ところでOSは何を御使用でしょうか? >keiju> >keiju> dim% uname -a >keiju> >keiju> Linux dim 2.0.30 #1 Mon Nov 10 14:08:33 JST 1997 i586 unknown >keiju> >keiju> >ruby -v の結果を教えて下さい。 >keiju> >keiju> dim% ruby -v >keiju> >keiju> ruby 1.3.1(99/02/25) [i586-linux] >#include >main() >{ > printf("|%f|\n", fmod(1.0,0.0)); >} > >はいくつですか? >|1.0| >ですか? ですね. >fmod() は sunos には libc に、 >freebsd では libm にありました。 >どこにありますか? libmです. >linux って glibc なんですよね、、 >バージョンはいくつですか? 私のは古いんですよね... 5.4.33 です. gnu libcなのかな... Linux x libraryってなっていますが... >keiju> すると, 0.0は実際に9.1245819032751532e-313なんですか... そうか... 仮数 >keiju> 部0にしていても, 省略された再上位の1があるから完全に0はないんですね... > >指数はゲタ履き表現で、0.0 の指数のビットパターンの0で、 >仮数も0かつ符合ビットも0なら 0.0 、符合ビットが 1 ならば、-0.0 です。 > >IEEE754 では 0.0 も -0.0 も独立のクラス(754用語の)なので、 >値であるとともに、特異な状態でもある様です。 > > 0.0 == -0.0 ==> true > >とか、、なにか「光は粒子であり波動である」みたいですね ^^);;; ま. そういうものでしょう. __ ................................石塚 圭樹@日本ラショナルソフトェア... ----------------------------------->> e-mail: keiju@rational.com <<---