cobol学习笔记_1231培训资料
- 格式:doc
- 大小:53.50 KB
- 文档页数:24
cobol学习02——基本语句1.MOVE语句 是整个COBOL中最常⽤额语句。
可以实现变量的赋值,参数传递等类似功能。
可以对单个数据进⾏复制,也开业对⼀组数据进⾏复制。
a、复制单个数据 例: 01 IN-STATUS PIC X(5). --> MOVE 'READY' TO IN-STATUS. --> MOVE IN-STATUS TO OUT-STATUS. 说明:当复制的数据为数值类型时 如果⽬标数据的长度⼤于源数据项内容的长度时,则在⽬标数据项的⾼位以0进⾏填充 如果⽬标数据的长度⼩于源数据项内容的长度,对⾼位超出部分进⾏截断。
如果数值含有⼩数部分,需要作为浮点数做相应处理。
b、复制⼀组数据 通过MOVE语句对⼀组数据进⾏复制。
MOVE语句中的两个变量分别是数据组的名称。
注意点: 所复制的组内数据必须同名,不同名的数据将不被复制。
如果数据项在分组中,则分组名称也必须相同。
数据项在组内的顺序可以任意。
以FILLER命名的数据项不被复制。
2.PERFORM语句 执⾏COBOL中所编写的相应的处理过程。
过程处理相当于COBOL中的函数,PERFORM⽤于调⽤这些函数。
可通过THRU选项同时对多个处理过程进⾏执⾏。
3.ACCEPT和DISPLAY语句 可以⽅便调试。
a、ACCEPT语句接收数据 既可以接收⽤户从终端输⼊的数据,也可以接收由系统产⽣的相应数据。
接收的数据存放在 COBOL数据部中所定义的相应变量中。
4.REDEFINES语句 ⽤于同⼀块内存区域内进⾏重定义。
可以定义多个指向同⼀内存区域的变量。
01 TEST-AREA. 05 TEST-A PIC X(4). 05 TEST-B REDEFINES TEST-A.5.⽂件相关语句 ⽂件包括常规⽂件,以及VSAM⽂件。
基本操作包括⽂件的打开、关闭、⽂件读写。
a、OPEN和CLOSE语句 OPEN语句⽤于⽂件的打开操作。
COBOL语言的发展概述• COBOL是Common Business Oriented Language(商业通用语言)的缩写。
• COBOL不仅是商业数据处理的理想语言,而且广泛应用于数据管理领域,因此COBOL也被称为“用于管理的语言”。
• 在计算机的应用领域中,数据处理(data processing)是应用最为广泛的一个领域。
数据处理的日益广泛应用要求人们设计出能满足实际数据处理工作中各种要求的一种计算机语言。
COBOL就是在这种形势下应运而生的。
COBOL语言的特点• 最适于数据处理领域。
• COBOL比较接近于自然语言(英语)。
• 通用性强。
• COBOL的结构严谨,层次分明。
• COBOL的缺点是比较繁琐。
COBOL程序的结构• COBOL源程序的结构• 标识部 环境部 数据部 过程部段 段 段 节 节 节 节 节 节 节 节 节 段 …… 描述体 …… 段 ……句子 …… 句子 …… 语句 ……动词 ……COBOL的四部标识部(IDENTIFICATION DIVISION)主要用来指定源程序名字,也可以写入其它用作备忘的某些信息(如日期、作者等)。
环境部 (ENVIRONMENT DIVISION)指出程序中用到的数据文件名与计算机系统的设备的对应关系,即把某一文件名与某一外部设备联系起来。
数据部(DATA DIVISION)程序中所用到的全部变量都应在数据部中说明它们的类型和所占的内存。
过程部(PROCEDURE DIVISION)编写相应的程序语句来实现源程序需要实现的相应功能。
COBOL源程序的书写格式• ANSI书写格式标号区续行区 A 区 B 区(正文区)注释1 6 7 8 11 12 72 73 80• 终端格式• COBOL字符和COBOL字• COBOL字符 COBOL字• 系统字符集保留字• COBOL字符集例如:DIVISION,SECTION • 包括以下字符:用户字(非保留字)・数字:0〜9・大写字母:A〜Z・小写字母:a〜z・ 专用字符: + ,-,*,/等数据名的命名规则• 每个数据名的长度为1〜30个字符之间。
COBOLCOBOL简易教程主要内容1.COBOL语⾔的基本概念及程序的结构关于COBOL的初步知识COBOL程序的结构COBOL源程序的书写格式2.COBOL数据表⽰常量层次的概念PICTURE语句数据在内存中的各种形式3.算术运算变量赋值 (MOVE, MOVE CORR)算术运算(ADD, SUB, MUL, DIV, COMPUTE等) ?内部函数4.字符串处理合并、分离、取⼦串、替换等5.程序逻辑控制条件的分类IF、EVALUATEPERFORM6.表处理定义、赋值、引⽤、查询7.读、写多格式记录⽂件8.常⽤语句⼩结9.⼦程序1.COBOL语⾔的基本概念及程序的结构1.1关于COBOL的初步知识◆COBOL是Common Business Oriented Language (通⽤商业语⾔,或称管理语⾔)的缩写◆最适⽤于数据处理◆⽐较接近于⾃然语⾔(英语)◆COBOL的结构严谨,层次性强◆COBOL的缺点是⽐较烦琐。
1.2 COBOL 程序的结构部(Division) ⼀部可包括若⼲节节(Section) ⼀节可包含若⼲段段(Paragraph) ⼀段可包含若⼲句⼦句⼦(Sentence) ⼀个句⼦可包含若⼲语句语句(Statement) 制定计算机完成⼀定的操作⼦句(Clause) 制定完成某⼀⽅⾯的功能每个程序应包含四个部IDENTIFICATION DIVISION (标识部)主要⽤来指定源程序名字,也可以写⼊其他⽤作备忘的某些信息(如⽇期、作者等)。
ENVIROMENT DIVISION(环境部)主要⽤于指出程序中⽤到的数据⽂件名与计算机系统的设备的对应关系,即把某⼀⽂件名与⼀个外部设备联系起来。
DATA DIVISION(数据部〕程序中所⽤到的全部数据(包括输⼊输出的数据和中间数据)都应在数据部中说明它们的类型和所占内存情况。
PROCEDURE DIVISION(过程部〕⽤来给出程序要执⾏的指令,使计算机产⽣相应的操作,例如进⾏数学运算。
COBOL培训教程-11COBOL是一种过程型编程语言,最初由美国联邦政府财政部和IBM公司共同开发,主要应用于商业和金融领域。
随着计算机技术的不断发展和商业需求的变化,COBOL确立了其在企业信息系统中的重要地位。
而为了满足企业对COBOL程序员的需求,也为有志成为COBOL开发人员的IT专业人士提供了学习机会,许多培训机构开始提供COBOL培训教程,其中包括“COBOL培训教程-11”。
一、“COBOL培训教程-11”是什么?“COBOL培训教程-11”是一个专门为COBOL初学者或想深入学习COBOL的人提供的培训教程。
本教程涵盖了COBOL的基本语法、程序结构、数据类型、数据处理、文件处理、子程序等内容,同时还涉及到企业级COBOL程序的编写和调试。
本教程注重实践操作,通过编写实际的程序来帮助学习者更好地理解和掌握COBOL编程。
二、为什么要学习COBOL?COBOL是一种非常稳定、安全、高效的编程语言,被广泛应用于金融、制造、保险、医疗等行业的业务处理和管理系统。
许多企业的信息系统至今仍在使用COBOL编写的程序,需要维护和升级。
因此,学习COBOL开发有非常广阔的就业前景。
除此之外,COBOL还有以下优点:1. 语法简单易懂,学习门槛不高。
2. 可以处理大型数据,并有效地组织和管理数据。
3. 可以与其他编程语言或工具集成,提供灵活性。
4. 可以从源代码的角度审计系统,保证信息安全。
三、“COBOL培训教程-11”的学习流程1. 熟悉COBOL开发环境学习COBOL之前,需要熟悉COBOL开发环境。
现有的主流开发环境包括微软Windows、Linux、UNIX等,还需要安装COBOL编译器和调试器等开发工具。
在学习过程中需要熟练掌握开发环境的基本使用方法。
2. 学习COBOL基本语法COBOL的基本语法包括程序结构、基本语句、数据类型、运算符等。
学习者需要熟悉这些基本语法,从而能够编写简单的COBOL程序。
Cobol 语法基础一.COBOL 语言的特点最适于数据处理领域:算数计算量少而逻辑处理量多,输入输出量大,数据间存在着一定的逻辑关系,大量的分类排序;COBOL比较接近英语,容易懂;通用性强,易植,COBOL 结构严谨,层次分明。
二. COBOL的组成部分1.标识部(IDENTIFICATION DIVISION):用于标识程序名。
IDENTIFICATION DIVISION.PROGRAM-ID. 程序名。
[AUTHOR。
作者名。
][INSTALLATION。
计算机设置场所。
][DATE-WRITTEN。
源程序编写日期。
][DATE-COMPILED。
源程序编译日期。
][SECURITY。
保密程度。
]2.环境部(ENVIRONMENT DIVISION):用于说明程序运行的环境。
ENVIRONMENT DIVISION.CONFIGRATION SECTION。
SOURCE-COMPUTER。
源计算机名。
OBJECT-COMPUTER。
目标计算机名。
[SPECIAL-NAMES。
专用名描述项。
][INPUT-OUTPUT SECTION。
FILE-CONTROL。
{文件控制描述体}[I-O-CONTROL。
输入输出控制描述体]]3.数据部(DATA DIVISION):用于说明程序中涉及的所有数据。
4.过程部(PROCEDURE DIVISION):是程序的核心部分,它决定计算机应进行什么操作。
三. 最简单的COBOL 程序举例1.环境配置说明:(1)安装“Fujitsu NetCOBOL for Windows V7.0”的企业版,安装完成后选择“COBOL Project Manager”打开COBOL主控制台。
(2)选择“Open Project”打开存在的COBOL程序,或者输入新的Project名选择打开,可以建立新的COBOL Project.。
(3)在主控制台新建的Project目录下创建新的文件,后缀名为EXE。
COBOL简易教程COBOL简易教程主要内容1.COBOL语言的基本概念及程序的结构一个例子●COBOL程序的结构●COBOL源程序的书写格式2.COBOL数据表示常量层次的概念PICTURE语句数据在内存中的各种形式3.算术运算●变量赋值 (MOVE, MOVE CORR)●算术运算(ADD, SUB, MUL, DIV, COMPUTE等)●内部函数4.字符串处理●合并、分离、取子串、替换等5.程序逻辑控制条件的分类IF、EVALUATE●PERFORM6.表处理定义、赋值、引用、查询7.读、写多格式记录文件8.常用语句小结9.子程序1.关于COBOL的初步知识◆COBOL是Common Business Oriented Language (通用商业语言,或称管理语言)的缩写◆最适用于数据处理◆比较接近于自然语言(英语)◆COBOL的结构严谨,层次性强◆COBOL的缺点是比较烦琐。
1.1 一个例子:*************************************************************** ** * * COBOL TRAINING PROGRAM * * VERSION 2.1.0 COPYRIGHT (C) 2004 * * WISTRON DALIAN SOFTWARE CO., LTD. * * ALL RIGHTS RESERVED. * * * **************************************************************** IDENTIFICATION DIVISION.PROGRAM-ID. EXERCIS6.AUTHOR. QXLU (WISTRON DALIAN).DATE-WRITTEN. 04-06-23.DATE-COMPILED. 04-06-23.*----------------------------------------------------------------* * COMMENT : * * * *----------------------------------------------------------------* ENVIRONMENT DIVISION.CONFIGURATION SECTION.SOURCE-COMPUTER. IBM-3084.OBJECT-COMPUTER. IBM-3084.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT DDI01 ASSIGN TO "DDI01".SELECT DDO01 ASSIGN TO "DDO01".*DATA DIVISION.FILE SECTION.*FD DDI01 LABEL RECORD IS STANDARD DATA RECORD ARE IN-AREA0, IN-AREA1.01 IN-AREA0.05 IN-YEAR-NUM PIC 9(2).05 IN-PRINCIPAL PIC 9(4)V99.05 FILLER PIC X(07).05 RMARK PIC X(01) VALUE X"0A".01 IN-AREA1.05 IN-INTEREST-RATE OCCURS 5 TIMES PIC V999.05 RMARK PIC X(01) VALUE X"0A".FD DDO01 BLOCK 0 RECORDS LABEL RECORD STANDARD RECORDING F.01 PRT-REC.05 FILLER PIC X(79).**====================================== =========================* WORKING-STORAGE SECTION.01 IN-FILE-DATA.05 YEAR-NUM PIC 9(2).05 PRINCIPAL PIC 9(4)V99.05 INTEREST-RATE-TABLE.15 INTEREST-RATE OCCURS 5 TIMES PIC V999.*01 HEADER0 PIC X(79) VALUE' TABLE OF SIMPLE INTEREST'.01 HEADER1 PIC X(79) VALUE' ************************************'.01 HEADER2 PIC X(79) VALUE' PRINCIPAL 4,000.00 FOR 10 PERIODS'.01 HEADER3 PIC X(79) VALUE SPACE.01 HEADER4 PIC X(79) VALUE' PERIOD INTEREST RATE'.01 HEADER5.05 OUT-I-R OCCURS 5 TIMES PIC BBBBBBBBB.999.01 DETAIL0.05 OUT-PERIOD PIC ZZZ.05 OUT-P-I-S-ITEM OCCURS 5 TIMES.10 FOURSPACES PIC X(04) VALUE SPACE.10 OUT-P-I-SUM PIC 9,999.99.01 CNT-YEAR-NUM PIC 9(2).01 I-R-INDEX PIC 9.01 P-I-SUM PIC 9(6)V99.**************************************************************** ** * P R O C E D U R E D I V I S I O N * ***************************************************************** PROCEDURE DIVISION.*INPUT-DATA SECTION.OPEN INPUT DDI01.OPEN OUTPUT DDO01.READ DDI01.MOVE IN-YEAR-NUM TO YEAR-NUM.MOVE IN-PRINCIPAL TO PRINCIPAL.READ DDI01.MOVE IN-AREA1 TO INTEREST-RATE-TABLE.*PROCESS-OUTPUT-DATA SECTION.*PRINT HEADERWRITE PRT-REC FROM HEADER0 BEFORE 1.WRITE PRT-REC FROM HEADER1 BEFORE 1.WRITE PRT-REC FROM HEADER2 BEFORE 1.WRITE PRT-REC FROM HEADER3 BEFORE 1.WRITE PRT-REC FROM HEADER4 BEFORE 1.* PRINT INTEREST RATEPERFORM TEST BEFORE VARYING I-R-INDEXFROM 1 BY 1 UNTIL I-R-INDEX > 5MOVE INTEREST-RATE( I-R-INDEX ) TO OUT-I-R( I-R-INDEX ) END-PERFORM.WRITE PRT-REC FROM HEADER5 BEFORE 1.*PROCESS & PRINT DETAILSPERFORM PRINT-DETAILVARYING CNT-YEAR-NUM FROM 1 BY 1UNTIL CNT-YEAR-NUM > YEAR-NUM.*CLOSE-FILES SECTION.CLOSE DDI01.CLOSE DDO01.*STOP RUN.**---------------------------------------------------------------* * PRINT-DETAIL **---------------------------------------------------------------* PRINT-DETAIL SECTION.*MOVE CNT-YEAR-NUM TO OUT-PERIOD.PERFORM PROCESS-DETAILVARYING I-R-INDEX FROM 1 BY 1 UNTIL I-R-INDEX > 5. WRITE PRT-REC FROM DETAIL0 BEFORE 1.*PRINT-DETAIL-RTN.EXIT.**---------------------------------------------------------------* * PROCESS-DETAIL **---------------------------------------------------------------* PROCESS-DETAIL SECTION.*COMPUTE P-I-SUM = PRINCIPAL *( INTEREST-RATE( I-R-INDEX ) * CNT-YEAR-NUM + 1 ). MOVE P-I-SUM TO OUT-P-I-SUM( I-R-INDEX ).*PROCESS-DETAIL-RTN.EXIT.** *** END OF CODING EXERCIS6 ***1.2 COBOL 程序的结构(1/p4)部(Division) 一部可包括若干节节(Section) 一节可包含若干段段(Paragraph) 一段可包含若干句子句子(Sentence) 一个句子可包含若干语句语句(Statement) 制定计算机完成一定的操作子句(Clause) 制定完成某一方面的功能每个程序应包含四个部IDENTIFICATION DIVISION (标识部)主要用来指定源程序名字,也可以写入其他用作备忘的某些信息(如日期、作者等)。
C O B O L学习笔记_20121231cobol语言.修订版.(上册+下册).pdf2012-12-14(1~22 )COBOL语言特点:(1) 适合数据处理(算术计算量小而逻辑处理多;输入输出数据量大;数据间有一定逻辑关系,即层次关系;大量分类排序;对报表要求高、多样化等)(2) 接近自然语言英语,易于理解(3) 通用性强,易于移植(4) 结构严谨,层次分明,每个程序分为4部分(division:标示部Identification division、环境部envroNment division、数据部data division、过程部procedure division)、每部分分为若干节(section 有节头标示,类似部头)、节下面分为若干段(paragraph 有段头标示)。
每一部分都有固定格式。
(5) 缺点是比较繁琐。
不乱程序逻辑如何,都必须按照四大部分生成,对每部分都必须定义和说明,即使该部分实际上没有内容,也要写出头部,导致源程序冗长。
=================一个简单的COBOL程序:Code:IDENTIFICATION DIVISION.PROGRAM-ID. EXAM1.ENVIRONMENT DIVISION.DATA DIVISION.PROCEDURE DIVISION.S. DISPLAY 'THIS IS A COBOL PROGRAM.'STOP RUN.=================IDENTIFICATION DIVISION: 用来指定源程序名称,也可写入其他信息(如作者、日期、保密等)。
ENVIRONMENT DIVISION: 程序中用到的数据文件名和计算机的设备的对应关系,即把某一数据文件和一外部设备关联起来。
此外,还可以指定目标程序中使用的专门控制方法和程序所用内存区的大小。
DATA DIVISION: 程序用到的所有数据的类型和占用内存的情况。
PROCEDURE DIVISION: 用来给出程序要执行的命令,是计算机产生相应的操作。
部下面可以有节,节下面有段;或者部下面直接是段。
=================以上四个部分,只有过程部是执行部分,是核心部分。
过程部中,每段由若干句(Sentence)组成,每句以句号加一个以上的空格来结束的。
一个句子只能由一个语句组成,一个语句加一个句号后跟一个或多个空格形成一个句子。
一个句子可以包含多个子句(Clause),每个子句也有一个动词,指定某一方面的功能。
除了过程部外,环境部和数据部也可以包含子句,如SELECT子句、文件描述子句等。
=================COBOL每行80列,每行分为几个区:(1) 1~6列为“标号区”,一般前3列表示页号,后3列表示本页行号。
标号应当按照从小到大顺序填写,但可以不连续。
可以填标号,也可以不填写,对程序没有影响。
(2) 第7列:“续行标志区”,写上续行符"-",表示本行是续上一行后面的。
一般只有拆分字符需要两行紧连或者一个长的字符串需要拆成两行时才使用,否则可以空着。
不推荐使用续行符,容易导致错误。
(3) 第8~11列,称为"A区",程序的某些部分,如部头、节头、段头、层号01、层号77以及文件标示符FD等应从A区开始书写。
可以从第8列开始,也可以不从,但必须在8~11列的任何一列开始。
(4) 第12~72列,称为"B区",是程序的正文部分,过程部的句子必须从B区开始写,不能写入A区中。
(5) 第73~80列,为“注释区”,一般是简单说明,程序编译和执行时都不会理会该区内容。
80列的划分区,只是对程序有以上限制,对于数据而言没有以上分区限制,即输入数据可以从第1列用到第80列。
所有字母应大写;相邻两个字之间应该留一个或以上空格;运算符和等号两边必须各留一个空格;过程部中左括号的左侧和右括号的右侧都要留一个空格,内侧不必留空格;逗号、句号、分号的左边不能留空格,右边必须留空格;一个空格和多个空格作用相同,但引号中的除外;允许一行写几个语句,也可以一个语句写在多行上。
=================COBOL字符集:COBOL程序中允许出现的字符(引号内的除外)。
数字:0~9大写字母:A~Z专用字符15个:加号 +减号或连接号 -乘号或星号 *除号 /等号 =逗号 ,句号或小数点 .分号 ;引号 '或"括号 ()小于号 <大于号 >空格货币符号 $#,!,?,%等字符属于系统字符集但不属于COBOL字符集,不能在程序中出现(引号内除外)。
=================COBOL字分为两类:保留字和用户字(非保留)。
保留字指在COBOL中已规定作专门用途的字,代表特定的含义,不能另作他用。
=================数据名就是由程序设计者定义的一片内存区域,即用一个符号代表一个地址。
长度只能是1~30个字符之间;只能由字母、数字和连接符"-"组成,至少含一个字母,连接符不能出现在名称的两端,不能出现空格;不能使用COBOL保留字,一般使用连接符是避免使用保留字的好方法,或者使用X或数字开头的名称;最好使用望文生义的单词命名。
=================常量包括数值常量(Numerical Literal)、非数值常量(Nonnumerical Literal)和表意常量(Figurative Constant)三类。
数值常量不能超过18位数字;至少要有一个数字,不能含有超过一个符号;数字之间不能有空格。
非数值常量指用引号引起来的字符串;非数值含量不能参与运算;如果想把引号也放入常量,需要使用QUOTE保留字实现,如DISPLAY QUOTE 'ABCD' QUOTE,表示'ABCD'六个字符,但QUOTE本身不能替代引号;非数值常量不能超过120个字符。
表意常量就是指用保留字表示的一些特殊常量,如用ZERO表示0,SPACE表示空格等。
=================COBOL的数据具有层次的特征,类似于一颗倒立的树或者是金字塔结构,一般将这样的一条数据称之为一个记录(record)。
为了反映数据在一个层次结构中的层次,引入了层号的概念,使用2位数来表示。
层号小表示较高的层次。
记录是具有一定层次关系的一组数据项的最大集合。
是内存中具有独立逻辑含义的最大可存取项,层号为01。
记录下分为几项,不能继续分的称为初等项或基本项(Element item)。
初等项是数据的基本单位;如果还能继续分,称为组合项(Group Item),组合项下可以是组合项或者初等项。
多个记录可以组成一个文件。
但文件一般存储在外部,不在内存中,内存中最大存取项是记录。
2012-12-1923~28过程部是COBOL的核心部分,应当以过程部为主体,找出几部分之间的关系。
过程部的特点:(1) 过程部是程序的第四部分(2) 过程部都以一个动词开始,如MOVE、READ、WRITE、IF。
表示计算机应当执行的操作。
(3) 动词后面一般都跟着一个操作的对象,可以是数据文件或者数据名。
(4) 过程部一律写在B区上,即第12列开始,可以写在一行或者多行,续行也从B区开始。
=========输入输出1、ACCEPT语句从键盘终端或者指定输入设备获取少量输入数据。
ACCEPT 标识符 [FROM 助忆名]这里的标识符必须是可以唯一的标识一个数据项的数据名。
如部->节->段->数据项的情况下,使用OF关联上下关系,保证标识符的唯一性,如01 A.02 B1.03 C ...03 D ...02 B2.03 C ...03 D ...必须写成 C OF B1 和 C OF B2 区分两个不同的C以上[]内的内容表示是可选项,{}内的内容表示其中各项可多选一,...表示之前的{}或[]的内容可以重复多次,有下划线的保留字表示必写,没有的表示可以省略。
以上的FROM省略时表示从系统默认输入设备获取数据,如键盘,增加时,表示从指定设备获取数据,助忆名表示从一个设备名,具体的名称可以在ENVIRONMENT DIVISION中定义:ENVIRONMENT DIVISION.CONFIGURATION SECTION. 配置节SPECIAL-NAMES. 专用字段CONSOLE IS ABC. 将输入设备定义为助忆名:ABC ACCEPT T FROM ABC.表示从输入设备获取数据并赋值给变量T。
ACCEPT之后只能跟一个标识符,不能跟多个。
=========2、DISPLAY语句用于少量数据输出到指定外设上。
DISPLAY {标识符|常量}[标识符|常量]...[UPON 助忆名]默认在屏幕上显示数据,使用UPON指向指定的设备名输出每执行一次DISPLAY,总是从一个新行开始;如果一行显示不完,会自动换行显示。
正式程序中,一般都不使用ACCEPT和DISPLAY,以提高系统效率,减少手工干预。
=========3、READ语句READ 文件名 RECORD [INTO 标识符] [;AT END 执行语句]分号可以省略例如 READ IN-FILE,表示从IN-FILE文件中读取数据,IN-FILE称为“内部文件名”,它与外部文件名之间的关系是通过ENVIRONMENT DIVISION中指定的,如:Code:ENVIRONMENT DIVISION.INPUT-OUTPUTSECTION.输入输出节FILE-CONTROL.文件控制段SELECT IN-FILE ASSIGN TO 外部文件名.2012-12-21 (29~38)内部文件名的长度不能超过30byte,只能由数字、字母和连接符组成,必须至少包含一个字母。
每执行一次READ语句,只读取文件中的一条记录,为避免误解,可以加上关键字RECORD,如:READ IN-FILE RECORD其中,RECORD是可选项,是否写,效果一样。
在计算机内存中专门开辟一片存储单元存放读入记录,所以大小应当等于一条记录的大小。
每次读取下一条记录,会冲掉前一条记录的内存区域,所以必须在处理下一条之前保存处理结果,内存中不会保存前一条记录信息。
输入记录区样例:Code:DATA DIVISION.FD IN-FILE LABEL RECORD IS STANDARD.01 IN-RECORD.02 DATE-IN.03 YEAR PIC 99. (表示2位整数)03 MONTH PIC 99.03 DAYy PIC 99.02 PRODUCT-CODE PIC 9(4).02 CUSTOMER-CODE PIC 9(4).02 QUALITY PIC 9(6).02 UNIT-PRICE PIC 9(6).FD是File Description(文件描述)的缩写,表示从该行起是“文件描述体”。