Googleの電卓機能で、一部の大きい数字の計算に問題が発生している。コンピュータの世界ではちらほら耳にするような話だが、とてつもなく大きい数字にちなんで名付けられた、超コンピュータマニアの会社にはあってはいけないことだろう。
一部の大きな数字で問題が発生するGoogleの電卓機能常時ではないが、一部の非常に大きい数字でエラーが発生する。例えば、2,999,999,999,999,999から2,999,999,999,999,998を引くと1になるが、Googleの電卓機能では0と表示される。
しかし、切り捨てによって誤りが生じるというわけでもない。1,999,999,999,999,999引く1,999,999,999,999,995は0と、誤った答えが表示されるが、1,999,999,999,999,999引く1,999,999,999,999,993は6と、正しい答えが表示される。また、400,000,000,000,002引く400,000,000,000,001は0と、誤った答えが表示されるが、400,000,000,000,002引く400,000,000,000,000は2と、正しい答えが表示される。
他人の不幸を喜ぶ人たちにとっては最高に楽しいことかもしれないが、Googleは、10の100乗(グーゴル)の計算も苦手なようだ。1グーゴル足す1引く1グーゴルの答えは1が正しいが、0になる。
確かに、正確さを維持しようとすれば、特殊な方法を使って数字をエンコードする必要があるため、この規模での計算は難しい。しかし、電卓を開発する人たちにとって幸いなことに、実世界では比較的まれな要件だ。2つの星の間の距離を測定する場合、数cmレベルの精度を得られるのはまれだ。また、このような精度が実際に意味を持つこともまれだ。
多くの場合、大きい数字は、小さい数字(仮数)に10の乗数(指数)を掛けた2つの値による浮動小数点形式で表される。例えば、Googleの第2四半期の売り上げは12億5000万ドルだったが、「1,250,000,000ドル」「1.25掛ける10の9乗ドル」「1.25×10^9ドル」と表記することもできる。浮動小数点計算は大きな数の計算に便利だが、一般的に、最初の要素は限られた桁数の数字しか把握できないため、途中で若干の誤差が生じる。
コンピュータでの正確な計算は、コンピュータが一般的に0または1の数字しかない2進数で計算をしていることに基づいている。一方、人は0から9までの数字を使った10進数計算を行う。正確性に問題が生じるのは、コンピュータが数字を2進数に変換して処理し、結果を10進数に戻して表示するためだ。
2008-03-18 10:38:01
勝ち残るIT活用--中堅中小企業の現場からタレントの江口ともみさんをレポーターに、
全国さまざまな業種の企業担当者に聞く!
サイバー攻撃関連ニュースのまとめ特別企画:高度化するサイバー攻撃からビジネスを守る
~対策レポートや企業の製品動向をまとめ読み~
「創世期」から「成長期」へ突入
国内ベンダーはどう「進化し続ける」のか?
仮想化の暗黒大陸を切り拓く
高次元のサーバー性能とHAクラスタリング
インフラ部分からセキュリティを保つ
エージェントレス型ウィルスソフトの力
【セミナー】IBM、Red Hat、サイオス
リーディングカンパニー3社が語る最新動向
管理者は、OS、仮想環境の混在に悩む
クラウド環境に必要な3つの運用サイクル
従来の防御が使えない!?複合的手法による
脅威から企業システムを守るために
「使いたい時、使いたいだけ」を実現
今年検討すべき理想のストレージを考える
オープンソースの強みを発揮するJBoss
コラボレーションを変えるクラウドサービス
企業システムへの接続を安全、簡単にする
Juniper Networks MAGシリーズ
ANAや商船三井など5社の事例で読み解く
2012年春モデルの情報をいち早く掲載
HPのお得な情報や最新情報が満載
入社後の満足と不満足の分かれ目とは?!
納得いく転職をする為の転職活動での留意点
よくある「5つの勘違い」の真実とは?
IT担当者必見の、目覚めの書を公開
多様なボイスコミュニケーションを実現する
クラウド型プラットフォームとは?
株式会社i.JTB
株式会社サテライトオフィス
EMCジャパン株式会社
ZDNet Japanは、情報システム部門の読者を対象に、ITを活用したビジネス課題の解決策を提供します。技術や製品の解説、ケーススタディ、ホワイトペーパーなどを通じて、情報システム部門の正しい意志決定を支援します。
ITビジネス全般については、CNET Japanをご覧ください。