計算用項目は、算術演算で使用される値です。この項目は数字でなければなりません。 グループ項目が USAGE COMPUTATIONAL で記述されている場合、そのグループ内の基本項目はこの USAGE になります。
計算用項目の最大長は、10 進数で 18 桁です (PACKED-DECIMAL 項目を除く)。 ARITH(COMPAT) コンパイラー・オプションが有効な場合は、 PACKED-DECIMAL 項目の最大長は 10 進数の 18 桁です。 ARITH(EXTEND) コンパイラー・オプションが有効な場合は、 PACKED-DECIMAL 項目の最大長は 10 進数の 31 桁です。
計算用項目の PICTURE に含めることができるのは、次のものに限ります。
COMPUTATIONAL-1 項目と COMPUTATIONAL-2 項目 (内部浮動小数点) は、PICTURE ストリングを持つことはできません。
2 進数項目によって占有されるストレージの大きさは、 PICTURE 節で定義された 10 進数の桁数によって異なります。
| PICTURE 節の示す桁 | 占有するストレージ |
|---|---|
| 1 から 4 | 2 バイト (ハーフワード) |
| 5 から 9 | 4 バイト (フルワード) |
| 10 から 18 | 8 バイト (ダブルワード) |
バイナリー・データは、ビッグ・エンディアン です。演算符号は、 左端ビットに含まれます。
BINARY, COMPUTATIONAL, および COMPUTATIONAL-4 のデータ項目は、TRUNC コンパイラー・オプションによって影響を受けることがあります。このコンパイラー・オプションの影響については、「Enterprise COBOL プログラミング・ガイド」を参照してください。
この符号表現は、ゾーン 10 進数フィールドで 4 ビットの符号表現を行うのと同じビット構成を使用します。 詳細については、「Enterprise COBOL プログラミング・ガイド」を参照してください。
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 文字ストリングで暗黙指定される値です。 この最大値を超える値を保管しようとすると、サイズ・エラー状態となります。