Rational Developer for System z
COBOL for Windows バージョン 7.5 プログラミング・ガイド


IEEE データと 16 進数データの違いの処理

IEEE と 16 進数の浮動小数点データ間の表現の違いによる一般的な問題を回避するには、FLOAT(S390) コンパイラー・オプションを使用します。

Windows ベースのワークステーションは、IEEE 形式を使用して浮動小数点データを表現します。 メインフレームは、zSeries の 16 進形式を使用します。次の表に、USAGE COMP-1 データと USAGE COMP-2 データに対する、正規化浮動小数点 IEEE と正規化 16 進数の違いをまとめます。

表 67. IEEE と 16 進数の対比
仕様 COMP-1 データの IEEE COMP-1 データの 16 進数 COMP-2 データの IEEE COMP-2 データの 16 進数
範囲 1.17E-38* から 3.37E+38* 5.4E-79* から 7.2E+75* 2.23E-308* から 1.67E+308* 5.4E-79* から 7.2E+75*
指数表現 8 ビット 7 ビット 11 ビット 7 ビット
小数部表現 23 ビット 24 ビット 53 ビット 56 ビット
正確性のある桁数 6 桁 6 桁 15 桁 16 桁
* 値は正数でも負数でも構いません。

大半のプログラムでは、これらの違いによる問題は発生しません。ただし、データの 16 進数表現に依存するプログラムの場合は、移植時に注意が必要です。

パフォーマンスについての考慮事項: 一般に、zSeries の浮動小数点表記を使用すると、ソフトウェアが zSeries のハードウェア命令のセマンティクスをシミュレートする必要があるため、プログラムの実行速度が遅くなります。 これは、特に FLOAT(S390) コンパイラー・オプションが有効で、なおかつプログラムに多数の浮動小数点計算がある場合の考慮事項です。

例: 数値データおよび内部表現

関連参照
FLOAT


ご利用条件 | フィードバック

Copyright IBM Corporation 1996, 2008.
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)