COBOL - 基本语法
字符集
"字符"在层次结构中处于最低位置,无法进一步划分。 COBOL字符集包括78个字符,如下所示 −
序号 | 字符 & 描述 |
---|---|
1 | A-Z 字母(大写) |
2 | a-z 字母(小写) |
3 | 0-9 数字 |
4 |
空格 |
5 | + 加号 |
6 | - 减号或连字符 |
7 | * 星号 |
8 | / 正斜杠 |
9 | $ 货币符号 |
10 | , 逗号 |
11 | ; 分号 |
12 |
. 小数点或句点 |
13 |
" 引号 |
14 |
( 左括号 |
15 |
) 右括号 |
16 |
> 大于 |
17 |
< 小于 |
18 |
: 冒号 |
19 |
' 撇号 |
20 |
= 等号 |
编码表
COBOL的源程序必须以编译器可接受的格式编写。 COBOL 程序是在 COBOL 编码表上编写的。 编码表的每行有 80 个字符位置。
角色位置分为以下五个字段 −
位置 | 字段 | 描述 |
---|---|---|
1-6 | 列号 | 保留行号。 |
7 | 指示器 | 它可以有星号(*)表示注释,连字符(-)表示继续,斜杠(/)表示换页。 |
8-11 | A区 | 所有 COBOL 划分、章节、段落和一些特殊条目必须从 A 区开始。 |
12-72 | B区 | 所有 COBOL 语句必须从区域 B 开始。 |
73-80 | 识别区 | 程序员可以根据需要使用。 |
示例
以下示例显示了 COBOL 编码表 −
000100 IDENTIFICATION DIVISION. 000100 000200 PROGRAM-ID. HELLO. 000101 000250* THIS IS A COMMENT LINE 000102 000300 PROCEDURE DIVISION. 000103 000350 A000-FIRST-PARA. 000104 000400 DISPLAY “Coding Sheet”. 000105 000500 STOP RUN. 000106
JCL 执行上面的COBOL程序 −
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C //STEP1 EXEC PGM = HELLO
当你编译并执行上面的程序时,它会产生以下结果 −
Coding Sheet
字符串
字符串是由各个字符组合而成的。 字符串可以是
- 注释,
- 文字,或
- COBOL 单词。
所有字符串必须以分隔符结束。 分隔符用于分隔字符串。
常用分隔符 − 空格、逗号、句号、撇号、左/右括号和引号。
注释
注释是不影响程序执行的字符串。 它可以是任意字符组合。
注释有两种类型 −
注释行
注释行可以写在任何列中。 编译器不会检查注释行的语法,而是将其视为文档。
注释条目
注释条目是那些包含在识别部分的可选段落中的条目。 写在B区,供程序员参考。
以粗体突出显示的文本是以下示例中的注释条目 −
000100 IDENTIFICATION DIVISION. 000100 000150 PROGRAM-ID. HELLO. 000101 000200 AUTHOR. TUTORIALSPOINT. 000102 000250* THIS IS A COMMENT LINE 000103 000300 PROCEDURE DIVISION. 000104 000350 A000-FIRST-PARA. 000105 000360/ First Para Begins - Documentation Purpose 000106 000400 DISPLAY “Comment line”. 000107 000500 STOP RUN. 000108
JCL 执行上述COBOL程序 −
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C //STEP1 EXEC PGM = HELLO
当你编译并执行上面的程序时,它会产生以下结果 −
Comment Line
文字
文字是直接硬编码在程序中的常量。 在下面的示例中,"Hello World"是一个文字。
PROCEDURE DIVISION. DISPLAY 'Hello World'.
有两种类型的文字,如下所述 −
字母数字文字
字母数字文字用引号或撇号括起来。 长度最多可达 160 个字符。 撇号或引号只有在配对时才可以成为文字的一部分。 文字的开头和结尾应该相同,可以是撇号,也可以是引号。
示例
以下示例显示有效和无效的字母数字文字 −
Valid: ‘This is valid’ "This is valid" ‘This isn’’t invalid’ Invalid: ‘This is invalid” ‘This isn’t valid’
数字文字
数字文字是 0 到 9、+、- 或小数点的数字组合。 长度最多可达 18 个字符。 符号不能是最右边的字符。 小数点不应出现在末尾。
示例
以下示例显示有效和无效的数字文字 −
Valid: 100 +10.9 -1.9 Invalid: 1,00 10. 10.9-
COBOL Word
COBOL Word 是一个字符串,可以是保留字或用户定义字。 长度最多可达 30 个字符。
用户定义的
用户定义的单词用于命名文件、数据、记录、段落名称和部分。 形成用户定义的单词时允许使用字母、数字和连字符。 您不能使用 COBOL 保留字。
保留字
保留字是 COBOL 中预定义的字。 我们经常使用的不同类型的保留字如下 −
关键字,例如 ADD、ACCEPT、MOVE 等。
特殊字符字样,例如 +, -, *, <, <=, 等。
图形常量是诸如零、空格等常量值。下表列出了所有图形常量的常量值。
图形常量
序号 | 图形常量和描述 |
---|---|
1 |
HIGH-VALUES 一个或多个字符将按降序排列在最高位置。 |
2 |
LOW-VALUES 一个或多个字符在二进制表示中包含零。 |
3 |
ZERO/ZEROES 一个或多个零,具体取决于变量的大小。 |
4 |
SPACES 一个或多个空格。 |
5 |
QUOTES 单引号或双引号。 |
6 |
ALL literal 用文字填充数据项。 |