COBOL 基本语法

由 jyk201115 创建,youj 最后一次修改 2016-12-12

字符集

字符是层次结构中的最底层,它们不能被进一步划分。在COBOL字符集包括78个字符,如下所示:

字符描述
AZ字母(大写)
AZ字母(小写)
0-9数字
 空格
+加号
-减号或连字符
*星号
/正斜杠
$货币符号
逗号
;分号
.小数点或句号
双引号
左括号
右括号
>大于
<少于
冒号
'撇号
=等号

编码表

COBOL的源程序必须以编译器可接受的格式编写。COBOL程序写在COBOL编码表上。编码表的每一行有80个字符位置。

字符位置分为以下五个字段:

位置字段描述
1-6列数保留为行号。
7指示符它可以有星号(*)表示注释,连字符( - )表示延续和斜杠(/)表示换页。
8-11A区所有的COBOL各部,节,段和一些特殊条目必须在A区开始。
12-72B区所有的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词

COBOL词是一个字符串,可以是保留词,或者用户自定义的词。长度最多可达30个字符。

用户自定义

用户自定义词用于命名文件,数据,记录,段名和节。允许字母,数字和连字符用于用户自定义词。不能使用COBOL保留词。

保留词

保留词是COBOL中预定义的词。我们经常使用的保留词的不同类型如下:

  • 关键词:如ADD,ACCEPT,MOVE等。

  • 特殊字符:如+,-,*,<,<=等。

  • 象征常数:是常数值,如ZERO,SPACES等。象征常数的所有常数值参照下表。

象征常数

象征常数描述
HIGH-VALUES
一个或多个字符,将在降序排列中排在最高的位置。
LOW-VALUES一个或多个字符在二进制表示中带有零。
ZERO / ZEROES一个或多个零,取决于变量的大小。
SPACES
一个或多个空格。
QUOTES单或双引号。
ALL literal
用文字填充数据项。




课工场赞助广告-前端必学技能
二维码
建议反馈
二维码