Float Decimal (p) BCD - Intel 以外のプラットフォーム

Open PL/I の FLOAT DECIMAL BCD の基盤となるデフォルト サポートは、浮動バイナリに関する標準 IEEE-854-1987 です。これは、Micro Focus の FLOAT BINARY のサポートと同じであり、Intel 以外のプラットフォームでのみ使用できます。

FLOAT DECIMAL をサポートするための Open PL/I コンパイラ オプションは -fdasfb (浮動小数を浮動バイナリとしてコーディング) です。このオプションがデフォルトです。

FLOAT DECIMAL(p) で、p が 6 以下の精度を表す場合のデフォルト形式は、4 バイトの浮動バイナリです。

FLOAT DECIMAL(p) で、p が 6 より大きく 16 以下の精度を表す場合のデフォルト形式は、8 バイトの浮動バイナリです。

または、浮動小数データは、-nofdasfb (no float dec as float bin) コンパイラ オプションを使用して、12 バイトの 2 進化 10 進数 (Binary Coded Decimal; BCD) 浮動小数データとして保存および処理することもできます。この場合、Float Decimal (p) は、パック 10 進数形式で保存された、10 進浮動小数点数となります。これは、符号、指数符号、無限大に使用される 2 ビット、非数 (通常は 0)、3 桁 (10 進法) の指数、および 17 桁 (10 進法) の小数で構成されます。指数および小数の両方とも、別に符号ビットを持ちます。すべての桁は、文字列全体が 96 ビット (12 バイト) に収まるように、2 進化 10 進数 (BCD) にパックされます。小数には、p 桁以上の 10 進数が含まれます。


Float Decimal

サイズ 整列 範囲の近似絶対値
12 バイト 4 バイト 9.9999999999999999x10 -999 から 9.9999999999999999x10 999