COMP

COMP 項目を COMP-X として扱うことで、または COMP の使用が意味する表現をデータ記述項に設定することで、COMP データ項目を含む文に対し、コンパイラで、簡潔で効率の良いコードが生成されるようにします。

構文:

>>-.---.--.--------COMP"opt"--.--------><
   +-/-+  +-.----.-COMP-------+
            +-NO-+

パラメーター:

opt は、次のいずれかになります。

BINARY
データ記述項で COMP を使用することで、数値の 2 進数 2 の補数表現を指定します。
DISPLAY
データ記述項で COMP を使用することで、数値の表示表現を指定します。
PACKED
データ記述項で COMP を使用することで、数値のパック 10 進表現、つまりデータ項目が署名された場合に末尾の記号片でバイト当たり 2 つの 10 進数字を指定します。
UNPACKED
データ記述項で COMP を使用することで、数値の表示表現、つまりデータ項目が署名された場合に末尾の記号バイトでバイト当たり 1 つの 10 進数字を指定します。

プロパティ:

デフォルト: NOCOMP および COMP"BINARY"
段階: 構文チェック
$SET: 最初の行

依存関係:

DIALECT"RM" により、COMP"UNPACKED" が設定されます。

説明:

パラメーターなしの COMP 指令が有効な場合、コンパイラによって生成された 2 進 2 の補数で表される COMP 使用データ項目のコードは、COMP 使用データ項目の数値オーバーフローの場合に ANSI 規格ではない方法で動作します。この指令は、コンパイルするプログラムで、数字のオーバーフローが起こらないことが解っている場合、または、オーバーフローの処理に (非標準であるが) 定義された動作が使用される場合にのみ設定してください。

パラメーターを指定した COMP 指令は、データ記述項での COMP の使用を、上記のパラメーターで説明したとおりに解釈します。COMP および COMP"BINARY" は併用できます。COMP"DISPLAY"、COMP"PACKED"、または COMP"UNPACKED" が有効な場合、COMP は無効になります。