非言語環境プログラム の COBOL 式の構文
この節で定義されている構文を使用して、非言語環境プログラム の COBOL プログラムをデバッグするときに、Debug Tool コマンドの式を記述します。
一般的には、非言語環境プログラム の COBOL 式をコマンドの一部として (例えば、LIST expression コマンド、代入コマンド、または IF コマンドのオペランドとして) 入力するときには、常にその非言語環境プログラム の COBOL 式をアポストロフィ (') で囲む必要があります。以下の例は、アポストロフィの適切な使用を示しています。
LIST 'A-B IN C';
'A' = 'B';
IF 'A = 22' THEN...
アセンブラー構文を使用する非言語環境プログラム の COBOL プログラムのデバッグに使用できる、いくつかの Debug Tool
コマンドがあります。これらのコマンドを説明しているそれぞれの節に、このコマンドの効果に関する注記があります。
例えば、非言語環境プログラム の COBOL プログラムのデバッグ時に、以下のコマンドを使用することができます。
STORAGE(X"1B4C0",3) = X"0102FC";
非言語環境プログラムの COBOL 式に関する制限
非言語環境プログラム の COBOL 式をアポストロフィ (') で囲むという要件のほかに、以下の制限が非言語環境プログラム の COBOL 式に適用されます。
- 非言語環境プログラム の COBOL 式では、以下の演算子が Debug Tool でサポートされます。
- IN または OF
- 添え字 / 指標
- LENGTH OF
- +, -, *, /
- // (剰余)
- || (連結)
- ( )
- 添え字または指標のリストでは、添え字または指標の式をコンマで区切る必要があります。
添え字または指標の式を区切るには、スペースでは不十分です。
- コンテキスト内の小文字は、非数値リテラルを除き、大文字への置換文字
(および等価文字) として受け入れられます。
- Debug Tool では、COBOL 特殊レジスター (例えば、DAY、DATE、および TIME) の使用は、非言語環境プログラム の COBOL 式でサポートされません。
- 非数値リテラルは、引用符 (") で囲む必要があります。アポストロフィ (') は使用できません。
- 非言語環境プログラム の COBOL でレベル 88 変数をリストまたは変更することはできません。
- 以下の表意定数のサブセットのみが、Debug
Tool の非言語環境プログラム の COBOL 式でサポートされます。
- HIGH-VALUE、HIGH-VALUES
- LOW-VALUE、LOW-VALUES
- QUOTE、QUOTES
- SPACE、SPACES
- ZERO、ZEROES、ZEROS
共通構文エレメント
以下の構文要素を使用して、非言語環境プログラム の COBOL 式を記述することができます。
- ddd または ddd.ddd
- 10 進定数。ddd は有効な 10 進数。例えば、145 または 12.72。
- X"xxxxx"
- 16 進定数。xxxx は有効な 16 進の数字。
例えば、次のようになります。
X"1F4C"
- "cccc"
- 非数値リテラル。
例えば、次のようになります。
"F$3"
- symbol
- 非言語環境プログラム の COBOL ソース・プログラムで使用される有効なシンボル。例:
LASTNAME
USERVAR8
12CENTS
Debug Tool は、すべてのメイン・メモリーを表すシンボルとして、暗黙的に _STORAGE
シンボルをすべての非言語環境プログラム の COBOL プログラムの中で定義します。 すべての式で使用できる演算子で定義されるサブストリング表記と一緒に _STORAGE シンボルを使用すると、
メモリーの任意の領域を参照できます。
例えば、_STORAGE(X"1FF3C"::4) はアドレス X"1FF3C" にある 4 バイトのストレージを参照します。
_STORAGE 記号で使用されるサブストリング表記で実アドレスを指定します。したがって、ストレージの最初のバイトを参照するには、サブストリング表記で 1 ではなく 0 を使用します。
- %symbol
- 有効な Debug Tool 変数または組み込み関数。
例えば、次のようになります。
%ADDRESS
%HEX(expression)
演算子
この節で定義される演算子を使用して、非言語環境プログラム の COBOL 式および条件付き非言語環境プログラム の COBOL 式を記述できます。
すべての式で使用できる演算子
この節で定義される演算子を使用して、非言語環境プログラム の COBOL 式を記述します。
- +
- 加算
- -
- 減算または接頭部の除去
- *
- 乗算
- /
- 除算
- //
- 余り
- ||
- 連結 (非算術計算オペランドのみ)
- (...)
- 演算順序を制御するための括弧。配列の添え字を指定するか、またはサブストリングを選択します。
- symbol(subscript,subscript,...)
- 配列の指標または添え字 (subscript) を指定する括弧。
添え字または指標の値の間にコンマが必要です。
ブランクだけは、許容されません。
- symbol(substrstart:substrend)
- 文字変数から、開始サブストリング (substrstart) から終了サブストリング (substrend)
までのバイトのサブストリングを選択する括弧。
- symbol(substrstart::substrlen)
- 文字変数から、開始サブストリング (substrstart) から始まる、ストリング長が
substrlen バイトのサブストリングを選択する括弧。
文字ストリングの配列の場合、symbol(subscript,substrstart:substrend)
または symbol(subscript,substrstart::substrlen) を使用して、
これらの形式を組み合わせることができます。
- LENGTH OF
- 記号の長さを返します。例えば、LENGTH OF ABC は、シンボル
ABC の長さを返します。
条件式でのみ使用できる演算子
以下の演算子は、条件式 (例えば、IF コマンド) でのみ使用できます。
- =
- 2 つのオペランドの同等性を比較する。
- ¬=
- 2 つのオペランドの不等性を比較する。
- <
- 左方のオペランドが右方のオペランドより小さいか否かを判断する。
- >
- 左方のオペランドが右方のオペランドより大きいか否かを判断する。
- <=
- 左方のオペランドが右方のオペランドより小さいまたは等しいか否かを判断する。
- >=
- 左方のオペランドが右方のオペランドより大きいまたは等しいか否かを判断する。
- &
- 論理「and」演算
- |
- 論理「or」演算
|
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)