首页 COBOL言语まとめ

COBOL言语まとめ

举报
开通vip

COBOL言语まとめ設計書 COBOL语言的初学者入门 1、概念篇 ​ COBOL的编译环境和工具 COBOL版本:COBOL-60(最老)、…、COBOL-85…、COBOL-2002(最新) 集成工具或插件:PowerCOBOL、ACUCOBOL for Linux、COBOL for Eclipse等等 ​ COBOL概述 COBOL 是 Common Business Oriented Language(通用商业的语言)的缩写。主要是专门为数据处理而设计的计算机高级程序设计语言。现今,这种语言主要应用于政府、银行、运输系统...

COBOL言语まとめ
設計書 COBOL语言的初学者入门 1、概念篇 ​ COBOL的编译环境和工具 COBOL版本:COBOL-60(最老)、…、COBOL-85…、COBOL-2002(最新) 集成工具或插件:PowerCOBOL、ACUCOBOL for Linux、COBOL for Eclipse等等 ​ COBOL概述 COBOL 是 Common Business Oriented Language(通用商业的语言)的缩写。主要是专门为数据处理而 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 的计算机高级程序设计语言。现今,这种语言主要应用于政府、银行、运输系统中。尤其是针对文件系统地编程中。COBOL 不是用来编写操作系统的语言。 在这些领域中,有大量的数据,数据处理,就是对这些数据进行记录、储存、传递、分类、计算、比较、排序、汇总等等系列活动的总和,其目的是从大量杂乱无章的数据中,抽取并导出对特定用户有价值的信息,作为决策的依据。它的特点是,在一般情况下,待处理的以及处理后的数据量都是非常大的。 ​ COBOL的HelloWorld实例 (see helloworld.cob)最简易的四部定义,运用DISPLAY语法。 SIGN--*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7----+----8 标号区、续行区、A区、B区(正文)和注解 000010*> 000020 IDENTIFICATION DIVISION. 000030 PROGRAM-ID. helloworld. 000040 ENVIRONMENT DIVISION. 000050 CONFIGURATION SECTION. 000060 DATA DIVISION. 000070 WORKING-STORAGE SECTION. 000080 PROCEDURE DIVISION. 000090 section1. display 'Hello World!'. 000100 END PROGRAM helloworld. ​ 格式规则 ​ 标号区:可随意填写,编译器不会编译到这个区域的内容。 ​ 续行区:*或/符号表示注释、_符号表示续行。 ​ A 区:部头、节头、段头、层号77、文件描述符FD等。 ​ B区:程序正文。 ​ 注释区:编译器不会编译超过72列的内容。 ​ COBOL程序结构 树形结构的COBOL程序 四部概要图 简要说明: ​ IDENTIFICATION DIVISION:标识部,指定程序名、Author、Date信息。 ​ ENVIRONMENT DIVISION:环境部,程序中的数据文件名与计算机系统设备的对应关系,还指定目标程序中使用的专门控制方法及程序所使用内存的大小等。 ​ DATA DIVISION:数据部,说明程序中所有用到的数据的类型和所占内存的情况。 ​ PROCEDURE DIVISION:过程部,程序执行指令。 这4个部必须以以上的顺序布置,在部下可以分节SECTION、节中分段PARAGRAPH、段中有句SENTENCE、句中有语句STATEMENT。 ​ COBOL字符和COBOL字 COBOL字符集指在COBOL程序中允许出现的字符,包括以下: ​ 数字0~9 ​ 大小写字母A~Z、a~z ​ 专用字符15个:+、-、*、/、=、,、.、;、’、(、)、<、>、$和空格 COBOL字是由COBOL组成的COBOL关键字,列举一下: ​ 保留字,DIVISIO、SECTION、MOVE、ADD、….等属于保留字 ​ 用户字,helloworld 、section1等由用户设定的程序名、文件名、节名、段名、数据项名等都属于用户字。 ​ 数据 ​ 数据(项)名(我们理解的变量) ​ 常量 o​ 数值常量,如1525 o​ 非数值常量,指字符串常量,如’France’ o​ 表意常量,如ZERO代表0,QUOTE代表’等,具体如下表格: 表意常量 代表的值 ZERO ZEROS ZEROES 表示一个或多个零字符 SPACE SPACES 表示一个或多个空格字符 HIGH-VALUE HIGH-VALUES 表示一个或多个具有最大值的字符(每个字符的二进制表示为11111111) LOW-VALUE LOW-VALUES 表示一个或多个具有最小值的字符(每个字符的二进制表示为00000000) QUOTE QUOTES 表示一个或多个引号字符 ALL 表示由一个或多个该常量组成的字符串 ALL的用法:MOVE ALL ‘AB’ TO C,若C的所占内存为5个,C就表示为’ABABA’ ​ 程序最基本注意点 ​ 较早的COBOL只允许大写字母,较新的版本允许小写(大小写等价,在引号下去分大小写)。 ​ 相邻的两个字必须留一个以上的空格。 ​ 运算符、等号和括号部分的左右两边必须留一个空格,如:A + (B + C) / D ​ 不同的编译器对于留空格有不同规定,比如逗号、句号、分号左边不能留空格,右边要留。(这个对于COBOL85不适用) ​ 数据(项)名不能有空格,如MOVE 10 TO FUJIE,FUJIE不能写成FU JIE,只能写成字母、数字和-连接符组成的数据名,如FU-JIE、FUJIE007等。 ​ 表示引号用QUOTE关键字,如DISPLAY QUOTE ‘Hello World!’ QUOTE,输出为带引号的Hello World!。QUOTE的作用是表示QUOTE之间的常量是字符串,但不能代替引号。 2、应用篇 根据实际程序的编写讲解如何定义四部,节,段等,定义和使用数据类型,定义和使用文件,以及语法结构。 ​ 如何定义标识部? Sample1.表示标识部的格式(see sample1.cob) PROGRAM-ID. A. 程序名 AUTHOR. Jeff. 作者名 DATE-WRITTEN. 2009/12/12. 编写程序时间 DATE-COMPILED. 完成程序时间,编译器自动填写 INSTALLATION. DEV NAME. 设备名 SECURITY. HIGH. 程序保密性要求 ​ 如何定义数据部?什么是层号?如何定义COBOL的数据类型?如何简单使用数据(赋值,运算等)? Sample2.(see sample2.cob)定义了77层和01层-49层的数据项名,定义数据项使用到的PICTURE从句(缩写为PIC),运用DISPLAY、ACCEPT、IF、MOVE语法(程序略)。 引发的概念: ​ 数据部的工作存储节的定义----描写文件以外的独立的数据项和记录。 ​ 层号的概念----77层用于与其它数据项无从属关系的数据项。01-49层用于有从属关系的数据项,有类似于结构体的含义,见程序一目了然。88层为数据项目条件名保留。66层为数据描述符项目保留。 ​ 工作存储节下定义: 数据项定义语法图 定义数据项的语法涉及到很多小语法(从句),其中最重要的属PICTURE语法了,其它的语法在遇到时候请读者自己研究。重要的PICTURE从句如下解释: ​ PICTURE 从句----定义数据项的具体数据类型、格式和长度。 数据类型,9表示数字0-9,X表示任何字符,V表示数字型中小数点的位置,S表示代数符号,通常表示符号位,A表示字母。 格式字符(一),“,”插入“,”,B插入空字符,“0”插入“0”,“/”插入“/”,“.”插入“.”。 格式字符(二),+正值插入“+”,负值插入“-”。 ​ 正值插入空格,负值插入“-”。 ​ $插入美元符号。 ​ CR正值插入2个空格,负值插入“CR”。 ​ DB正值插入2个空格,负值插入“DB”。 ​ “+”和“-”,“CR”和“DB”是相互排斥的,这两对编辑字符也是互相排斥的。 ​ 如果货币号和正负符号同时使用,则正负号在前,货币号在后。 ​ “+” ,“-”,“$”可以连写两个以上,使输出的符号和币号浮动在最高有效数位之前。 ​ *表示抑制前面的 0,并换成*。 ​ Z表示抑制前面的 0,并换成空字符。 ​ 两种抑制字符不能同时出现在一个 PICTURE 子句中。 ​ USAGE从句----表示该数据项的用途,同时也指定计算机内存中的数据项格式。充分利用计算机内存空间和算术功能。基本格式如下:BINARY、COMPUTATIONAL(缩写为COMP)、INDEX、PACKED-DECIMAL和DISPLAY。默认使用DISPLAY. ​ OCCURS从句----指定数据项作为固定的项目数组或可变项目数组,用以说明数据项重复出现的次数,不能用于01层和77层。语法格式如下:(see sample3.cob) ​ SYNCHRONIZED从句----为了使数据在内存用户工作区中的安排更有利于处理而设置的,指定基本数据项在计算机内存边界上的对齐,没有使用此从句,默认数据项在字节边界对齐。 o​ COMP SYNC(1 TO 4 Digits) = 2 Byte boundary. o​ COMP SYNC(5 TO 9 Digits) = 4 Byte boundary. o​ COMP SYNC(10 TO 18 Digits) = 8 Byte boundary. o​ INDEX = 4 Byte boundary. o​ 单个字符 = 1 Byte boundary. 例如: 一个三位的字符型数据项和一个两位的数字型数据项 一个五位的字符型数据项和一个四位的数字型数据项 ​ JUSTIFIED从句----功能为对齐,只适用于非编辑的字母数字基本数据项。例如: ​ REDEFINE从句----指定别名。不能用于01层,不能再REDEFINE从句中使用VALUE,不能包含OCCURS从句。例如: ​ VALUE从句----功能为初始化赋值,VALUE从句不能嵌套定义。如01层定义了VALUE,其下的层不准再由VALUE定义。 ​ 66层数据定义,其意义和REDEFINE类似,为了节省内存,不同数据使用同一工作区。 ​ 88层数据定义----88层不是独立的数据,它从属于另一个称作条件变量的初等数据项,用来表示它所根据条件取定的值(或预订的域中取值),格式如下(see sample4.cob): ​ 文件中的数据存储的结构是什么(Files、Records、Fields)?如何读、写文件的记录?如何打开、关闭、读及写文件?如何定义环境部和数据部? Sample5.(see sample5.cob)定义了数据部下的文件节,定义了环境部,运用FD语句,简单打开、关闭、读取、写入文件。 引发的概念: ​ Field----文件中的数据结构 ​ Record----文件中的数据记录 ​ File----一组Record的组合 如图: ​ 文件的类型----顺序文件、相对文件和索引文件。 ​ 文件的访问方式----顺序访问,适用于顺序文件、相对文件和索引文件。 ​ 随机访问,适用于相对文件和索引文件先指定关键字。 ​ 动态访问,相对文件和索引文件先指定关键字。 ​ 使用文件----教你怎么定义环境部、数据部,然后再过程部操作文件。 如图: ​ 输入输出节的配置语法 如图: o​ SELECT FileName是数据部文件节定义的内部文件名。 o​ [OPTIONAL]表示当文件打开方式为INPUT时候,文件不存在时候新建一个空白文件; 当文件打开方式为OUTPUT的时候,文件存在时,将文件覆盖。 o​ ASSIGN TO ExternalFileReference将内部文件名链接到外部文件。 o​ RESERVE AREAS指定文件缓存区以提高效率,对程序逻辑不影响。 o​ FILE STATUS指定文件进行I-O操作后,存放操作状态的数据项。 顺序文件 除了在输入输出节中设置文件的内部名和外部名的关联外, 还可以指定不同类型文件的组织结构、读取模式等。 o​ ORGANIZATION,可选,默认为顺序文件。 o​ ACCESS MODE,可选,顺序文件只允许顺序访问。 o​ PADDING CHARACTER,指定文件在固定块长的设备上所用的字符。 o​ RECORD DELIMITER,指定用什么字符区分变长记录。 相对文件 RELATIVE KEY,指对顺序访问时可选的,存在时,文件读取操作完成后,data-name的值更新。 索引文件 RECORD KEY,指定文件的主记录关键字。 ALTERNATIVE RECORD KEY,如果文件有替换关键字用此句指定,允许重复关键字时使用。 ​ 数据部的配置语法,FD语法----基本格式如下:(记录文件项的定义参见程序) 以下为OPEN、CLOSE、READ和WRITE语法----如图: ​ OPEN语法 OPEN语法 INPUT,读取文件。 OUTPUT,输入文件,在当前文件的头添加数据。 I-O,INPUT and OUTPUT。 EXTEND,输入文件,当文件类型为顺序文件,在当前文件尾添加数据; 当文件类型为相对文件,在当前文件尾添加数据,并添加现有最高值递增开始的关键字。 当文件类型为索引文件,在当前文件尾添加数据,并且住关键字大于文件中现有的关键字。 一条OPEN语句可以打开多个文件。 ​ CLOSE语法 CLOSE语法 一条CLOSE语句可以关闭多个文件。 ​ READ语法 顺序读取 AT END,当文件中记录已经读完,执行此statement。 NOT AT END,和AT END相反。 随机读取 ​ WRITE语法 顺序文件 相对文件/索引文件 ​ 基本语法 ​ MOVE----基本语法如下: 数据传输命令 ​ ACCEPT----基本语法如下: 人机交互命令 FROM mnemonic-name代表指定输入设备。 获取时间的例子,see sample6.cob。 ​ DISPLAY----基本语法如下: 显示语法 WITH NO ADVANCING,不换行输出。 ​ INITIALIZE----基本语法如下: 初始化命令 初始化为0或者空字符 ​ INSPECT----字符串操作命令,基本语法如下: ​ INSPECT TALLING ​ INSPECT REPLACING ​ INSPECT TALLYING REPLACING ​ INSPECT CONVERTING ​ STRING----基本语法如下: ​ UNSTRING----基本语法如下: ​ GOTO----基本语法如下: ​ PERFORM----基本语法如下: ​ CONTINUE----只是语句占位符 ​ EXIT----只是语句占位符,在有PERFORM命令调用的过程中,提供一个公共的返回点。 ​ STOP----基本语法如下: ​ 算术语法 ​ 加法:ADD(ADD TO、ADD GIVING、ADD CORRESPONDING) ​ 减法:SUBSTRUCT(SUBSTRUCT FROM、SUBSTRUCT GIVING、SUBSTRUCT CORRESPONDING) ​ 乘法:MULTIPLY(MULTIPLY BY、MULTIPLY GIVING) ​ 除法:DIVIDE(DIVIDE INTO、DIVIDE INTO GIVING、DIVIDE BY GIVING、DIVIDE INTO REMAINDER、DIVIDE BY...REMAINDER) ​ 混合运算:COMPUTE ​ 四舍五入:ROUNDED ​ 长度溢出判断:SIZE ERROR ​ CORRESPONDING ​ 逻辑与控制语法 ​ IF THEN语法----类似于PASCAL、DELPHI和BASIC,基本格式如下: -以上-
本文档为【COBOL言语まとめ】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_604531
暂无简介~
格式:doc
大小:8MB
软件:Word
页数:20
分类:互联网
上传时间:2010-10-22
浏览量:27