opensource COBOLには、他のCOBOL方言と同様に、データ部で実際に定義しなくても、プログラマが自動的に使用できる多数のデータ項目が含まれている。COBOLでは、レジスタや特殊レジスタなどの項目を参照する。opensource COBOLプログラムで使用できる特殊レジスタは次のとおりである。
表6-15-特殊レジスタ
レジスタ名 | 暗黙のCOBOL PIC/USAGE句14 | 使用方法 |
---|---|---|
LINAGE-COUNTER | BINARY-LONG SIGNED | このレジスタのオカレンスは、LINAGE句を持つSELECTで指定された各ファイルに存在する(5.1を参照)。FDにLINAGE句があるファイルが複数ある場合、このレジスタへの明示的な参照には修飾が必要である(「OFファイル名」を使用)。 このレジスタの値は、ページ本体内の現在の論理行番号になる(LINAGE句が論理ページを構成する方法については5.1を参照)。 このレジスタの内容は変更してはいけない。 |
NUMBER-OF-CALL-PARAMETERS | BINARY-LONG SIGNED | このレジスタには、サブプログラムに渡される引数の数が含まれている。メインプログラムで参照されると、その値はゼロになる。 同じデータを取得する別の方法については、8.3.1.9のC$NARG組み込みサブルーチンのドキュメントを参照。 |
RETURN-CODE | BINARY-LONG SIGNED | このレジスタは、数値データ項目を提供する。サブルーチンは、それCALLしたプログラムに制御を戻す前に値をMOVEしたり、メインプログラムがオペレーティングシステムに制御を返す前に値をMOVEしたりすることができる。 ほとんどの組み込みサブルーチン(8.3)が、このレジスタを使用して値を返す。 これらの値は―規則により―RETURN-CODE値を設定したプログラムが実行しようとしていたプロセスの成功(通常は値0)または失敗(通常は0以外の値)を示すために使用される。 |
SORT-RETURN | BINARY-LONG SIGNED | このレジスタは、RELEASE文またはRETURN文の成功または失敗のステータスを示すために使用される。成功の場合は値0が返り、値16が返ってきた場合は失敗を示す。RETURN文の「AT END」状態は、失敗とは見なされない。 |
WHEN-COMPILED | See “Usage” | このレジスタには、プログラムがコンパイルされた日時が「mm/dd/yyhh.mm.ss」の形式で含まれている。返ってくるのは2桁の年のみであることに注意すること。 |
14
PICTURE句またはUSAGE句の仕様の説明については5.3を参照。