SIGN

符号付き数値 DISPLAY データ項目の符号についてのデフォルトの規則を指定します。

構文:

>>-.---.--SIGN--"convention"---------------><
   +-/-+

パラメーター:

convention

符号保存規則。含まれる符号については次のいずれかにする必要があります。

  • ASCII
  • MF (ASCII と同じ)
  • EBCDIC
  • IBM (EBCDIC と同じ)
  • acu
  • mbp
  • ncr
  • realia
  • vax

デフォルトの符号モードについては次のいずれかになります。

  • INCLUDED
  • TRAILING
  • SEPARATE
  • TRAILING-SEPARATE
  • LEADING
  • LEADING-SEPARATE

詳細については、「説明」を参照してください。

プロパティ:

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

依存関係:

CHARSET"ASCII" を指定すると直ちに SIGN"ASCII" が設定されます。

CHARSET"EBCDIC" を指定すると直ちに SIGN"EBCDIC" が設定されます。

DIALECT"RM" を指定すると直ちに SIGN"EBCDIC" および SIGN"TRAILING" が設定されます。

説明:

convention パラメーターのオプションの意味は次のとおりです。

ASCII、MF
Micro Focus の保存規則。
EBCDIC、IBM
IBM の保存規則。IBM COBOL、RM/COBOL-85、および X/Open COBOL 標準と互換性があります。

JVM COBOL では、SIGN"EBCDIC" を HOST-NUMMOVE、HOST-NUMCOMPARE、または SIGN-FIXUP と組み合わせた指令は無効であり、コンパイル時に拒否されます。ネイティブ COBOL では、その組み合わせが許可されます。

acu
ACUCOBOL-GT の保存規則。この規則には、RM/COBOL (RM/COBOL-85 でなく) および以前のバージョンの ACUCOBOL-GT によって作成されたデータとの互換性もあります。
mbp
MBP COBOL の符号保存規則。
重要: USAGE DISPLAY の MBP COBOL 符号保存規則は、IBM COBOL および他の COBOL の一部で使用される符号保存規則と直接競合します。このため、MBP フォーマットの符号付き USAGE DISPLAY 項目は、プログラムが mbp オプションでコンパイルされる場合にのみ正しく解釈されます。これは、コンパイル時に適合しない符号規則が指定された場合であっても通常はランタイムが正しい値を抽出できる他の符号規則とは異なります。
制約事項: MBP COBOL には COMP-2 記憶域タイプはありません。
ncr
このオプションでは、異なる数値フォーマットが使用されます。フォーマットは、EBCDIC オプションまたは IBM オプションを使用する場合に使われるフォーマットと同じです。ただし正の COMP-3 項目は x0C ではなく x0B を正の符号値として使用します。このオプションには NCR COBOL との互換性があります。
realia
Realia の符号保存規則。S9(n) 変数の符号情報は Realia COBOL の規則を使用して保存され、その規則の 2 進 10 進変換は Realia コンパイラが実行する変換と同じです。
vax
このオプションでは、VAX COBOL と互換性のある数値符号フォーマットが作成されます。これらのフォーマットは IBM フォーマットと同一ですが、符号なし COMP-3 フィールドは x0F ではなく x0C を符号位置に置く点が異なります。

SIGN 指令を繰り返して、含まれる符号およびデフォルトの符号モードの符号保存規則を指定することもできます。

符号モード INCLUDED と TRAILING は、両方で末尾の含まれる符号を示します。符号モード SEPARATE および TRAILING-SEPARATE は、末尾の独立した符号を示します。符号モード LEADING は、先頭の含まれる符号を示します。符号モード LEADING-SEPARATE は、先頭の独立した符号を示します。TRAILING-SEPARATE と LEADING-SEPARATE のハイフンは省略可能です。

内部符号表現として 16 進値 B が使用されている場合、SIGN"ASCII" はデータ項目を負として扱います。他のいくつかの COBOL システム (RM/COBOL など) は、このように表現された項目を正として扱います。

デフォルトの符号モードは、特殊名段落の NUMERIC SIGN 句またはデータ記述項の SIGN 句でオーバーライドできます。