[COBOLのはじめ方] Part4: COBOLプログラムの構造(Divisionごとの役割)

COBOL
“`html

COBOLプログラムがどのように組み立てられているか見ていきましょう!

こんにちは!前回は「Hello, world」プログラムを作成し、COBOLプログラムの基本的な形に触れましたね。今回は、COBOLプログラムがどのように構成されているのか、その「骨組み」について詳しく学んでいきましょう。

COBOLプログラムは、大きく4つの部(Division)に分かれています。これはCOBOLの大きな特徴で、それぞれの部が特定の役割を持っています。この構造のおかげで、プログラムが何をするのか、どんなデータを使うのかなどが分かりやすくなっているんです。

4つの部は以下の順番で記述するのが決まりです。

  1. IDENTIFICATION DIVISION (見出し部)
  2. ENVIRONMENT DIVISION (環境部)
  3. DATA DIVISION (データ部)
  4. PROCEDURE DIVISION (手続き部)

では、それぞれの部がどんな役割を持っているのか、順番に見ていきましょう!

1. IDENTIFICATION DIVISION (見出し部) 🆔

役割: プログラム自身の情報を記述するところです。

  • プログラムの名前(PROGRAM-ID)は必須です。
  • その他、作成者(AUTHOR)や作成日(DATE-WRITTEN)なども記述できます(記述しなくてもOK)。

人間でいうと、自己紹介や名札のような部分ですね。

記述例:

IDENTIFICATION DIVISION.
PROGRAM-ID. MY-FIRST-PROGRAM.
AUTHOR. YOUR-NAME.
DATE-WRITTEN. 2025-03-30.

この部では、プログラムの処理内容ではなく、プログラムそのものを識別するための情報を書きます。次の「Step 2: 基本的な文法とデータ操作」で、PROGRAM-IDについてさらに詳しく学びます。

3. DATA DIVISION (データ部) 💾

役割: プログラムの中で使用する「データ」を定義するところです。

  • 変数(データを一時的に入れておく箱)の定義 (WORKING-STORAGE SECTION)
  • ファイルの中のデータ構造の定義 (FILE SECTION)
  • 他のプログラムとのデータの受け渡し部分の定義 (LINKAGE SECTION)

COBOLでは、プログラムで使う文字や数字などのデータを、すべてこの部で事前に定義しておく必要があります。どのような種類のデータ(数字、文字など)を、どれくらいの大きさで使うのかをPIC句(ピクチャー句)などを使って指定します。

記述例:

DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-MESSAGE   PIC X(20) VALUE "Hello from DATA DIVISION!".
01 WS-COUNTER   PIC 9(3) VALUE 0.

この例では、WS-MESSAGEという名前で最大20文字の文字列を入れる場所と、WS-COUNTERという名前で最大3桁の数字を入れる場所を用意しています。データの定義方法(特にPIC句)は、「Step 2: 基本的な文法とデータ操作」で詳しく学びます。

4. PROCEDURE DIVISION (手続き部) ⚙️

役割: プログラムの具体的な処理手順、つまり「何をするか」を記述するところです。

  • 計算処理 (足し算、引き算など)
  • データの移動や加工
  • 条件による処理の分岐
  • 繰り返し処理
  • 画面への表示やファイルへの書き込みなど

ここがプログラムの心臓部で、実際の命令を順番に書いていきます。DATA DIVISIONで定義したデータを使って、様々な処理を行います。

記述例:

PROCEDURE DIVISION.
MAIN-PROCEDURE.
    DISPLAY "This is PROCEDURE DIVISION.".
    MOVE "World" TO WS-TARGET-AREA. *> WS-TARGET-AREAはDATA DIVISIONで定義されている想定
    ADD 1 TO WS-COUNTER.            *> WS-COUNTERもDATA DIVISIONで定義されている想定
    DISPLAY "Counter: " WS-COUNTER.
    STOP RUN.

この例では、メッセージを表示したり、データを移動したり、カウンターに1を足したりしています。最後のSTOP RUN.でプログラムの実行を終了します。具体的な命令(文)については、「Step 3: 制御構文と演算処理」以降で詳しく学んでいきます。

まとめ

今回はCOBOLプログラムの基本的な構造である4つのDivision(部)について学びました。

Division役割主な内容
IDENTIFICATION DIVISIONプログラムの識別プログラム名 (PROGRAM-ID)、作成者など
ENVIRONMENT DIVISION実行環境の設定使用するコンピュータ、ファイルなど
DATA DIVISIONデータの定義変数、ファイルレコード、定数など
PROCEDURE DIVISION処理手順の記述計算、分岐、繰り返し、入出力などの命令

このように、COBOLでは役割ごとに記述する場所が決まっています。この構造を理解することが、COBOLプログラミングの第一歩です。

次回からは、いよいよ「Step 2: 基本的な文法とデータ操作」に入り、それぞれのDivision、特にIDENTIFICATION, DATA, PROCEDUREの各部について、より具体的な書き方を学んでいきます。お楽しみに!😊

参考情報

“`

コメント

タイトルとURLをコピーしました