本文概述
- COBOL划分是代码块。它是节, 句子或语句块的集合。
- 除法的开始行是除法名, 除法的结束行是下一个除法的开始或程序的结束。
- 除法是系统定义的单词。
- 所有部门都应在A区中。
COBOL中有四个部门:
- 鉴定科
- 环境部
- 数据部
- 程序科
鉴定科
标识部分是COBOL程序的开始, 这是每个COBOL程序中的必需部分。编译器和程序员使用此划分来标识程序。
在本节中, 我们可以定义其他可选详细信息。如作者姓名, 编写代码的日期, 最后编译的代码的日期以及其他根据你的要求提供的安全性详细信息。
你必须在”标识”划分之后立即定义PROGRAM-ID(关键字)。
语法如下:
[Mandatory] IDENTIFICATION DIVISION.
[Mandatory] PROGRAM-ID. NameOfProgram.
[Optional] AUTHOR. NameOfProgrammer.
[Optional] INSTALLATION. DevelopmentCenter.
[Optional] DATE - WRITTEN. mm/dd/yy.
[Optional] DATE-COMPILED. mm/dd/yy. HH:MM:SS.
[Optional] SECURITY. Program-type.
例子:
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
PROCEDURE DIVISION.
DISPLAY 'Welcome to srcmini'.
STOP RUN.
输出如下:
当你编译并执行上述程序时, 它将显示以下输出:
环境部
在程序的”环境划分”部分, 我们可以定义输入和输出文件。本部分是可选的。该划分通常用于描述程序将在其中运行的系统环境。
语法如下:
ENVIRONMENT DIVISION.
[Optional] [CONFIGURATION SECTION.
[Optional] [SOURCE - COMPUTER. {source - computer - entry}]
[Optional] [OBJECT - COMPUTER. {object - computer - entry}]
[Optional] [SPECIAL - NAMES. {special - names - entry}]]
[Optional] [INPUT - OUTPUT SECTION.
[Optional] [FILE - CONTROL. {file - control - entry}]
[Optional] [I-O - CONTROL. {i-o - control - entry}]]
它由两部分组成:
1.配置部分
配置部分包含有关在其上编写和执行程序的系统的信息。此部分必须在区域A中指定。
它由两段组成:
- 源计算机:这将包含有关在其中编译程序的系统的信息。
- 对象计算机:这将包含有关在其中执行程序的系统的信息。
语法如下:
[Optional] [CONFIGURATION SECTION.
[Optional] [SOURCE - COMPUTER. {source - computer - entry}]
[Optional] [OBJECT - COMPUTER. {object - computer - entry}]
[Optional] [SPECIAL - NAMES. {special - names - entry}]]
输入输出部分
此输入输出部分包含有关COBOL程序中要使用的所有文件的信息。
- 文件控制:将显示程序中使用的外部数据集的信息。
- I-O控制:这将显示程序中使用的文件信息。
语法如下:
[Optional] [INPUT - OUTPUT SECTION.
[Optional] [FILE - CONTROL. {file - control - entry}]
[Optional] [I-O - CONTROL. {i-o - control - entry}]]
例子:
让我们看一下”环境”部分的一个简单示例:
IDENTIFICATION DIVISION.
PROGRAM-ID. EXAMPLE.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. XXX-370.
OBJECT-COMPUTER. XXX-140.
SPECIAL-NAMES.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT FILEN ASSIGN TO DDNAME
ORGANIZATION IS SEQUENTIAL.
I-O-CONTROL.
DATA DIVISION.
PROCEDURE DIVISION.
DISPLAY 'ENVIRONMENT DIVISION WITH ALL ENTRIES..'
STOP RUN.
输出如下:
数据部
数据划分包含有关程序中使用的变量和数据项的信息。它定义了变量名称, 它们的长度, 小数位以及有关存储格式的信息。
文件部分:文件部分指定文件中使用的记录的详细信息。它将显示文件的整个记录结构。
语法如下:
DATA DIVISION.
FILE SECTION.
FD/SD filename
[RECORD CONTAINS integer CHARACTERS]
[BLOCK CONTAINS integer RECORDS]
[DATA RECORD IS record-name].
[RECORDING MODE IS {F/V/U/S}]
- 工作存储部分:此部分指定所有临时变量以及程序中使用的文件结构。
语法如下:
DATA DIVISION.
WORKING-STORAGE SECTION.
[Working-storage fields declaration]
- 本地存储部分:本地存储部分存储与工作存储部分相似的信息。唯一的区别是, 对于Local-Storage节, 每次程序开始执行时, 变量将被分配和初始化。
- 链接部分:此部分描述从外部程序接收的所有数据项。
语法如下:
DATA DIVISION.
LINKAGE SECTION
[linkage section data item]
例子:
让我们看一个简单的数据划分示例:
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 EMP-NAME1 PIC A(20).
01 EMP-NAME2 PIC A(20).
01 EMP-NAME3 PIC A(20).
01 EMP-ID1 PIC 9(3) VALUE 001.
01 EMP-ID2 PIC 9(3) VALUE 002.
01 EMP-ID3 PIC 9(3) VALUE 003.
PROCEDURE DIVISION.
A000-FIRST-PARA.
DISPLAY 'Welcome to srcmini Employee List'.
MOVE 'Sonu Jaiswal' TO EMP-NAME1.
MOVE 'Deep Ghosh' TO EMP-NAME2.
MOVE 'Nikita Kesharwani' TO EMP-NAME3.
DISPLAY "1. Founder : "EMP-NAME1.
DISPLAY " Emp ID is : "EMP-ID1.
DISPLAY "2. Developer : "EMP-NAME2.
DISPLAY " Emp ID is : "EMP-ID2.
DISPLAY "3. Developer : "EMP-NAME3.
DISPLAY " Emp ID is : "EMP-ID3.
STOP RUN.
输出如下:
程序科
- 过程划分是COBOL程序的主要部分。类似于C / C ++程序的main()函数。从该程序中, 除法部分程序实际上将开始执行。
- 此部分是程序的逻辑部分。此处编写了所有业务逻辑。像C / C ++ main()函数一样, 所有COBOL程序都必须具有过程划分。
- 过程分区包含可执行语句, 而可执行语句包含在数据分区中定义的变量。我们可以在过程分区中使用用户定义的名称和段落。
- 我们必须在此部门中至少指定一个声明。我们不能将其留空。
- 过程划分以在被调用程序中使用的EXIT PROGRAM或在调用程序中使用的STOP RUN结尾。
- 程序部门开始于区域A。
语法如下:
PROCEDURE DIVISION [USING {data-name-1}?]
例子:
让我们看一下过程划分的示例:
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NAME PIC A(20).
01 WS-ID PIC 9(5) VALUE 12345.
PROCEDURE DIVISION.
A000-FIRST-PARA.
DISPLAY '******** Welcome to srcmini ********'.
MOVE 'Nikita Kesharwani' TO WS-NAME.
DISPLAY "My name is : "WS-NAME.
DISPLAY "My ID is : "WS-ID.
STOP RUN.
输出如下:
评论前必须登录!
注册