Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 言語解説書


計算用項目

計算用項目は、算術演算で使用される値です。この項目は数字でなければなりません。 グループ項目が USAGE COMPUTATIONAL で記述されている場合、そのグループ内の基本項目はこの USAGE になります。

計算用項目の最大長は、10 進数で 18 桁です (PACKED-DECIMAL 項目を除く)。 ARITH(COMPAT) コンパイラー・オプションが有効な場合は、 PACKED-DECIMAL 項目の最大長は 10 進数の 18 桁です。 ARITH(EXTEND) コンパイラー・オプションが有効な場合は、 PACKED-DECIMAL 項目の最大長は 10 進数の 31 桁です。

計算用項目の PICTURE に含めることができるのは、次のものに限ります。

9
1 つ以上の数字文字位置
S
1 つの演算符号
V
1 つの暗黙の小数点
P
1 つ以上の 10 進数位取り位置

COMPUTATIONAL-1 項目と COMPUTATIONAL-2 項目 (内部浮動小数点) は、PICTURE ストリングを持つことはできません。

BINARY
これは 2 進数データ項目を指定します。 これらの項目は、0 から 9 の 10 進数字と 1 つの符号から構成される 10 進数です。 負の数は、同じ絶対値を持つ正の数の 2 の補数として表されます。

2 進数項目によって占有されるストレージの大きさは、 PICTURE 節で定義された 10 進数の桁数によって異なります。

PICTURE 節の示す桁 占有するストレージ
1 から 4 2 バイト (ハーフワード)
5 から 9 4 バイト (フルワード)
10 から 18 8 バイト (ダブルワード)

バイナリー・データは、ビッグ・エンディアン です。演算符号は、 左端ビットに含まれます。

BINARY, COMPUTATIONAL, および COMPUTATIONAL-4 のデータ項目は、TRUNC コンパイラー・オプションによって影響を受けることがあります。このコンパイラー・オプションの影響については、Enterprise COBOL プログラミング・ガイド」を参照してください。

PACKED-DECIMAL
これは、内部 10 進項目を指定します。 これらの項目は、ストレージの中でパック 10 進数フォーマットで示されます。 最後の文字位置を除く各文字位置は 2 桁からなり、最後の文字位置は最下位桁と符号で占められます。この種の項目は、0 から 9 の任意の数字に符号を付けて、 18 桁までの 10 進数の値を表すことができます。

この符号表現は、ゾーン 10 進数フィールドで 4 ビットの符号表現を行うのと同じビット構成を使用します。 詳細については、Enterprise COBOL プログラミング・ガイド」を参照してください。

COMPUTATIONAL または COMP (2 進数)
これは BINARY と等価です。 COMPUTATIONAL 句は BINARY と同期します。
COMPUTATIONAL-1 または COMP-1 (浮動小数点)
内部浮動小数点項目に対して指定します (単精度)。COMP-1 項目の長さは 4 バイトです。
COMPUTATIONAL-2 または COMP-2 (長精度浮動小数点)
内部浮動小数点項目に対して指定します (倍精度)。 COMP-2 項目の長さは 8 バイトです。
COMPUTATIONAL-3 または COMP-3 (内部 10 進数)
これは PACKED-DECIMAL と等価です。
COMPUTATIONAL-4 または COMP-4 (2 進数)
これは BINARY と等価です。
COMPUTATIONAL-5 または COMP-5 (固有 2 進数)
これらのデータ項目は、ストレージ内ではバイナリー・データとして 表現されます。このデータ項目には、(USAGE BINARY データの場合のように) 項目 に対する picture に入っている 9 の数で示される値に制限されず、ネイティブ・バイナリー 表記 (2、4 または 8 バイト) で本来表すことのできる値まで入れることができます。 数値データを COMP-5 項目に移動または保管すると、 COBOL の picture サイズによる制限ではなく、2 進数フィールド・サイズによっ て切り捨てが行われます。COMP-5 項目が参照された場合は、 フル 2 進数フィールド・サイズがその操作で使用されます。

TRUNC(BIN) コンパイラー・オプションを指定すると、すべてのバイナリー・ データ項目 (USAGE BINARY、COMP、COMP-4) は、USAGE COMP-5 で宣言されたかのように処理されます。

以下の表には、PICTURE 文字ストリングのいくつか、結果のストレージ表記、および USAGE COMP-5 で記述されたデータ項目の値の範囲を示しています。

Picture ストレージ表記 数値
S9(1) から S9(4) 2 進数ハーフワード (2 バイト) -32768 から +32767
S9(5) から S9(9) 2 進数フルワード (4 バイト) -2,147,483,648 から +2,147,483,647
S9(10) から S9(18) 2 進数ダブルワード (8 バイト) -9,223,372,036,854,775,808 から +9,223,372,036,854,775,807
9(1) から 9(4) 2 進数ハーフワード (2 バイト) 0 から 65535
9(5) から 9(9) 2 進数フルワード (4 バイト) 0 から 4,294,967,295
9(10) から 9(18) 2 進数ダブルワード (8 バイト) 0 から 18,446,744,073,709,551,615

COMP-5 データ項目の picture では、位取り係数 (つまり小数点位、または 暗黙の整数の桁) を指定できます。 この場合、上の表にリストされている最大容量は、 それに応じて調節する必要があります。例えば、PICTURE S99V99 COMP-5 で記述されたデータ項目は、ストレージ内ではバイナリーのハーフワードとして表現され、-327.68 から +327.67 の範囲の値をサポートします。

使用上の注意: 算術ステートメントで ON SIZE ERROR 句を使用し、受け取り側が USAGE COMP-5 で定義されている場合、受け取り側に格納できる最大値は、項目の 10 進 PICTURE 文字ストリングで暗黙指定される値です。 この最大値を超える値を保管しようとすると、サイズ・エラー状態となります。


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

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