Chapter 1 概念
COBOL 是Common Business Oriented Language 的缩写。它不仅是商业数据处理的理想语言,
而且广泛用于数据管理领域,因此COBOL 语言也被称为“用于管理的语言”。
一。COBOL 语言的特点
最适于数据处理领域:算数计算量少而逻辑处理量多,输入输出量大,数据间存在着一定的逻辑 关系,大量的分类排序;COBOL比较接近英语,容易懂;通用性强,易移植,COBOL结构严谨,层次分明。
二。COBOL的组成部分:
1。标识部(IDENTIFICATION DIVISION):用于标识程序名。
2。环境部(ENVIRONMENT DIVISION):用于说明程序运行的环境。
3。数据部(DATA DIVISION):用于说明程序中涉及的所有数据。
4。过程部(PROCEDURE DIVISION):是程序的核心部分,它决定计算机应进行什么操作。
三。最简单的COBOL 程序举例:
COL 1 ---6 7 8 12---72 73---80
IDENTIFICATION DIVISION。
PROGRAM-ID。 PSAMPLE1。
ENVIRONMENT DIVISION。
DATA DIVISION。
PROCEURE DIVISION。
DISPLAY ‘THIS IS A COBOL PROGRAM.’
STOP RUN。
四。COBOL 源程序的书写格式:
第1 至 6 列为 “标号区”。 第7列为“续行标志区”
第8至此11列,称为“A区”。程序中有些内容如部头,节头,段头,层号 01,层号 77 及文件
描述符FD等应从A区开始写。
第12至此72列,称为“B区”。写程序中的正文部分。如过程部中的句子只能从B区开始写。
第73至80列,称为“注释区”。
五。COBOL字符集包括:
数字0 --- 9 ,字母 A--- Z ,a --- z , 专用字符:+ - * / = , . ; ‘ ( ) < > $ 及空格。属于系统字符集而不属于COBOL字符集的字符只能出现 在COBOL 程序中的字符串里。
六。常量:
COBOL 常量分为数值常量(如 100,-29),非数值常量(如 ‘ABC’ )和表意常量(如 ZERO,SPACE,HIGH-VALUE,LOW-VALUE ,QUOTE ,ALL 常量)。
七。COBOL 所处理的数据的特点
层次的概念:数据间存在的从属关系。
文件的概念:多个记录可以组成一个文件。
记录的概念:具有一定层次关系的一组数据项的最大集合,它是内存中具有独立逻辑含义的最大存取项,具有最高层次。
Chapter 2 过程部语句
一。输入输出语句。
1。ACCEPT语句:直接从终端键盘或系统指定的输入设备上输入数据。
ACCEPT 标识符 [FROM 助忆名]
注:A。标识符(identifier)指的是能唯一地标识一个数据项的数据名,不能唯一地标识一个
数据项的数据名不是标识符。标识符可以是组合项。
B。在ACCEPT语句中如不写FROM部分,如ACCEPT A ,则表示从系统隐含指定的
设备上读入一个数据给A。 如果不想从指定的设 备上输入,则要用FROM 选项,
这时“助忆名”需要在环境部中事先说明和那种外部设备相联系。如:
ENVIRONMENT DIVISION。(环境部)
CONFIGRATION SECTION。(配置节)
SPECIAL-NAMES。(专用名段)
CONSOLE IS ABC
如在过程部中有 ACCEPT T FROM ABC。 则表示要从控制台接收数据
2。DISPLAY语句:从计算机内存中输出到某一指定的输出设备上。
DISPLAY { 标识符1,常量1}[标识符2,常量2]。。。[UPON 助忆名]
( 标识符和助忆名的说明同上)
ACCEPT语句和DISPLAY语句不必定义文件适用于少量的数据输入输出。
3。READ语句:COBOL语言中数据的输入输出主要是通过对外部文件的读写进行的。READ 语句就是从外部文件上读入数据输 出到程序中的数据项中。在程序中用到的所有文件都需要在环境部中指定程序中用到的文件名与实际外部文件的联系。数据部也要对文件加以描述。指定数据结构各数据项所占的内存单元长度以及数据形式。
COBOL 的存取是以文件为对象以记录为单位的。
READ语句的最简单的格式为: READ 文件名
ENVIRONMENT DIVISION。
INPUT-OUTPUT SECTION。
FILE-CONTROL。
SELECT IN-FILLE ASSIGN TO 外部文件名。
为了存储读入的记录,必须在内存开辟一个与文件记录长度相等的存储区,即‘输入文件纪录区’。每一个输入文件都有相应的‘输入文件纪录区’,与之一一对应。亦即在数据部中描述文件的数据结构。
3。READ语句:
假设 IN-FILE 文件每一记录中包含的内容为:产品代码,产品数量,产品单价,生产日期。设某一记录的具体数据
如下:0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 1 9 9 9 0 3 2 2
prodcode quantity price year mon day
如果我们希望读入该记录并对各数据项进行处理,则需要在 ‘输入纪录区’中划分出各数据项,以便存放相应的数据。定义输入纪录区以及划分记录区中各数据项的工作是由数据部来完成的。下面我们简单介绍数据部定义记录区方法,针对上面输入数据的特点,我们可以在数据部中对记录区作如下描述:
DATA DIVISION。