cobol考前知识点 (1)
COBOL学习基础教程 01
COBOL 概述1.COBOL语言的发展概述COBOL是Common Business Oriented Language(商业通用语言)的缩写。
实际上,COBOL不仅是商业数据处理的理想语言,而且广泛应用于数据管理领域,如财会工作,统计报表,计划编制,情报搜索,人事管理等。
因此COBOL也被称为“用于管理的语言“。
在计算机的应用领域中,数据处理(data processing)是应用最为广泛的一个领域。
数据处理的日益广泛应用要求人们设计出能满足实际数据处理工作中各种要求的一种计算机语言。
COBOL就是在这种形势下应运而生的。
1959年COBOL-611965年COBOL-651978年COBOL-781985年COBOL-852.COBOL语言的特点①最适于数据处理领域。
所谓数据处理是指对大量数据的收集,统计,分类和加工。
例如企业管理,库存管理,报表统计,账目管理,信息情报检索等方面都属于数据处理。
数据处理的特点是:算术计算量小而逻辑处理多;输入输出多;数据间存在着一定的逻辑关系;大量的分类排序;对打印报表要求比较高,多样化等等。
②COBOL比较接近于自然语言(英语)。
COBOL程序看起来很像一篇用英语写出来的文章。
比如 ADD A TO B 表示 A + B = B 。
COBOL采用大量英文词汇和句型,学过英语的人看COBOL程序感到通俗易懂。
③通用性强,由于COBOL语言的标准化程度较高。
一个计算机上的COBOL程序向另一计算机系统上移植是比较容易实现的。
④COBOL的结构严谨,层次分明。
每个程序分四大部分(称为部 DIVISION),每个部下面分为若干节,每个节下面分为若干段。
每一部分都有固定的程式。
⑤COBOL的缺点是比较繁琐。
无论程序大小简繁,四大部分都要写齐,对每个部进行必要的定义和说明。
因此源程序显得比较冗长。
3.COBOL程序的结构①部IDENTIFICATION DIVISION(标识部) : 主要用来指定源程序的名字,也可以写入其他做备忘的某些信息。
COBOL基础知识
COBOLChapter 1 : cobol概述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 ---678 12---7273---80IDENTIFICATION 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语言知识点1.DATA ITEM NAMING RULES:长度为30个字节;字符包括A-Z,a-z,0-9和‘-’;横线不能出现在第一个或最后一个;COBOL 关键字用;至少包含一个字符。
2.DATA STRUCTER LEVEL NUMBER77定义一个独立的变量66重命名88定义条件名3.DATA TYPEAlphabetic, Alphanumeric, Alphanumeric-edited, Numeric, Numeric-edited/doc/b911681650.html,P-1,COMP-2,COMP-3,COMP,COMP-5COMP-1:指定内部浮点项目(双精度),8个字节长COMP-2:指定内部浮点项目(单精度),4个字节长COMP-3:压缩十进制(1个字节有两位)COMP-4(COMP):二进制存储COMP-3是IBM Mainframe特有,特意将一下:COMP-3 数据类型同样以二进制的形式保存在文件中,其占位数计算方法如下:占位数 =[ 定义长度 /2+1] [] 表示整COMP-3 数据在文件中存储形式如下例:例如:定义形式 -- 9(4) COMP-3, 占位数 =[ 定义长度 /2+1]=3 赋值: 1521 存储结果: 01 52 1F(F表示正数)赋值: 0 存储结果: 00 00 0F COMP-3 带有符号位时,赋值为正时,最后半个字节为 16 进制 C ;赋值为负时,最后半个字节为 16 进制D例如:定义形式 -- S9(4) COMP-3, 占位数 =[ 定义长度 /2+1]=3 赋值: -1521 存储结果: 01 52 1D (D 表示负数 )赋值: 1521 存储结果: 01 52 1C注意:当 COMP-3 的数据定义无 S ,赋予负值时,最后半个字节仍为 F ,即无法显示负数5.COBOL中常量ZERO(ZEROS,ZEROES):数字令或者字符“0”SPACE(SPACES):空格HIG-VALUE(HIGH-VALUES):将对应的二进制码全部置为1LOW-VALUE(LOW-VALUES):将对应的二进制码全部署为0QUOTO(QUOTOS):引号ALL:相应字符连接而成的字符串6.Arithmetic FunctionFUNCTION SUM(17,21,4.5,-6):计算总和FUNCTION SQRT(11):开平方FUNCTION INTEGER(4.5):取整FUNCTION INTEGER-PART(4.5):四舍五入7.Alphabetic FunctionFUNCTION CHAR(65):ACISS码转换FUNCTION LENGTH('KKKKK'):判断字符长度FUNCTION NUMVAL('+109'):字符转换成数字FUNCTION REVERSE('ABCD'):逆序排列FUNCTION ORD('A'):ACISS码转换8.Range FunctionsFUNCTION MAX(-21,15,2.4):选取最大值FUNCTION MIN(-21,15,2.4):选最小值FUNCTION ORD-MAX:最大值的位置FUNCTION ORD-MIN:最小值的位置FUNCTION RANGE1、COBOL简介COBOL是Common Business-Oriented Language(公用面向商业的语言)的缩写。
COBOL知识点
COBOL知识点写在前面:本知识点总结为本人根据一本图书馆借来的书总结出来本专业本外教课最终有可能考到的知识点,考试为英文卷子,本总结为中文。
其中带星号的可当课外知识记,是那本书中为学到的知识点中较简单的部分,应该不会考到。
且本总结不是考试范围,只是帮助大家理解COBOL这门语言。
一、通用部分:1、所有程序都要先写标志部:“IDENTIFICATION DIVISION. PROGRAM-ID.程序员的代号等”。
(*) 2、“AUTHOR”用于知名开发该程序的程序员名;“INSTALLATION”通常用于说明设计该程序的公司或部门;“DATE-WRITTEN”指明程序编写或修改的日期;“DATE-COMPILED”指明程序编译的日期;“SECURITY”通常用于列出具有访问该程序权限的用户。
二、环境部:ENVIRONMENT DIVISION.(注:如果该部分没有任何内容,是可以省略不写的)(*) 1、环境部中的配置节及其字段:ENVIRONMENT DIVISION.CONFIGURATION SECTION.SOURCE-COMPUTER. (指示编译程序的计算机)OBJECT-COMPUTER. (描述运行程序的计算机)SPECTAL-NAMES.(指定货币符号选择小数点、提供开关名和定义字母表)2、环境部中的输入/输出节:主要是将程序中的逻辑文件同环境中的物理文件想对应起来,由“INPUT-OUTPUT SECTION”标识。
输入/输出节包含两个字段:“FILE-CONTROL”(用于指定的对应关系,是该节中主要用到的字段);“I-O-CONTROL”(用于定义程序返回点,不同文件共享的内存区,以及多文件卷中文件的位置)。
FILE-CONTROL的例子:DENTIFICATION DIVISION.PROGRAM-ID. SAMPLE-PGM.ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROLSELECT CUSTOMER-FILEASSIGN TO S-SYSIN.SELECT PRINT-FILEASSION TO S-SYSOUT.对于例子中蓝色字的解释:其通过SELECT语句指定了两条文件对应关系。
COBOL经典讲义
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个字符之间。
COBOL 知识点集锦(上)
COBOL知识点集锦(上)cobol知识点集锦COBOL数据类型计息是银行的一项重要业务,包括日常代理客户收、付计算客户利息和年度计息等。
目前,这些工作大多数是在IBM ES9000主机的SAFE应用系统平台上进行,该系统联机程序和联机计息程序是用IBM370汇编语言实现的。
为方便汇编语言读写,在VSAM文件存储的数据中,数据存放格式进行了特殊的定义。
如日期存放采用X(3)型,01年03月15日,存入EBCD 码为X‘010315’。
在进行年度计息时,为了实现各种复杂的运算工作,一般采用COBOL语言来实现各种运算。
而采用COBOL语言读取X(3)型数据时,读出的是字符型数据,不能直接进行运算,必须转换为COBOL数据类型的数据后才能进行相应处理。
如刚才的X‘010315’,需要转换为内部十进制数据X‘0010315C’。
本文介绍一种用COBOL语言实现字符型X(3)与内部十进制数据相互转换的方法。
由X(3)型转换为内部十进制由于日期数据总是大于零,在COBOL语言的工作单元节定义变量DATE-FIRST后,再追加定义COBOL语言的最小数据单元X‘000C’,即十进制12。
由于重定义DATE-CASE为DATE -CHANGE后,DATE-CHANGE是原日期数据的1000倍,于是要在过程部将DATE-CHANGE除以1000。
首先,在COBOL程序WORKING-STORAGE SECTION.中定义如下内容:WORKING-STORAGE SECTION.01DATE-CASE.02DATE-FIRST PIC X(3).02DATE-SIGN PIC9(4)COMP VALUE12.;定点二进制数01DATE-CHANGE REDEFINES DATE-CASE PIC9(9)COMP-3.;内部十进制数据01DATE-HEX PIC X(3).;转换前数据01DATE-DEC PIC S9(7)COMP-3.;转换后数据然后,在过程部PROCEDURE DEVISION.中加入如下语句:PROCEDURE DEVISION.MOVE DATE-HEX TO DATE-FIRST.COMPUTE DATE-CHANGE=DATE-CHANGE/1000.MOVE DATE-CHANGE TO DATE-DEC.由内部十进制转换为X(3)型在进行相反的转换时,要消除因COBOL语言数据类型标志“C”引起的原日期数据前多加的一个0,所以需要将转换数据乘以10,再取出前6位数据即可。
cobol常用知识
cobol常用知识コボル基本語法コボル基本語法一、COBOL基本語法compla項目使用的Cobol是Micro Focus 公司生产的Cobol,采用在HP-UNIX上运行。
一、cobol的书写格式(每行)1、前6列为序号区(一般不编辑)2、第7列为标示列,仅可以写如下几个标示符。
a. “*”注释符(注释当前行的代码)b “/“注释符(注释当前行的代码,程序编译时,强制程序清单另起一页,不建议使用)c “-“字符串连接符d “D”DEBUG行标示符(程序为DEBUG模式时,标有该标示符的语句行代码执行,否则和注释行效果一样)3、第8列---11列为A区,包括以下内容。
a 部、节名。
b 层号014、第12列---72列为B区,过程部的程序必须写在B区中。
5、第72以后部分不能编辑。
二、cobol的语法结构(几大部分)1、标示部(IDENTIFICATION DIVISION):提供程序的一般性文档说明,本项目只保留程序名(PROGRAM-ID)一项。
2、环境部(ENVIRONMENT DIVISION): 提供程序外部有关的项目。
a. 配置节(CONFIGURATION SECTION)①.指定源计算机(SOURCE-COMPUTE).②.目标计算机(OBJECT-COMPUTE).③.设置debug模式(SOURCE-COMPUTE H9000V WITH DEBUGGING MODE)④. 指定读环境变量设置.SPECIAL-NAMES.ENVIRONMENT-VALUE IS CNS-ENV-PARMENVIRONMENT-NAME IS CNS-ENV-NAME.b. 输入输出节(INPUT-OUTPUT SECTION).文件的物理路径的定义。
方法一:(写死文件路径)SELECT FILE-LOG ASSIGN"/usr3/WSI/commonlog/WSI1101.log"ORGANIZATION IS LINE SEQUENTIAL.方法二:(过程部中动态指定文件)SELECT FILE-LOG ASSIGN TO SELECT-FILEORGANIZATION IS LINE SEQUENTIAL.在数据部定义字符串变量SELECT-FILE,在文件FILE-LOG打开前动态指定文件路径。
cobol笔记
.编码格式•第1~6列为序号区,用于表示行号。
行号不是必须的,也不必是顺序的,甚至可以是本机字符集中的任意字符,但正确的行号是很重要的。
•第7列为指示区,可以包含如下指示符:"*"指示本行内容为注释。
"-"指示本行代码为上一行的延续。
"D"指示本行代码为调试代码,将在启用DEBUGGING模式时被编译,未启用时将被忽略。
"/"指示编译器为源码列表开始新的一页,并且本行将被视为注释。
•第8~11列为A区。
下列项必须从A区开始:部标题(DIVISION)节标题(SECTION)段名(段标题)层指示符FD和SD,层号01和77DECLARATIVES 和END DECLARATIVESEND PROGRAM•第12~72列为B区。
作为程序主体的条目(entries),句子(sentences),语句(statements),从句(clauses)和续行(/)等都必须从B区开始。
*句法说明:节(SECTIONs)和段(paragraphs)定义了程序,它们又细分为以下部分:条目(entries):以句点(.)结尾的一系列从句。
构造于标识部、环境部和数据部。
从句(clauses):连续的COBOL字符串的有序集合,用于指定条目的某个属性。
构造于标识部、环境部和数据部。
句子(sentences):以句点(.)结尾的一个或多个语句的序列。
构造于过程部。
语句(statements):指定程序要执行的某个动作。
构造于过程部。
短语(phrases):构成从句和语句的更小单元。
2.基本结构----|----1----|----2----|----3----|----4----|----5----|----6----|----7----|----8//标识部000001 IDENTIFICATION DIVISION.000002 PROGRAM-ID. PGMNAME. //指定本程序名。
01-Cobol-基础知识讲义
第一章关于COBOL的初步知识一. COBOL语言的特点COBOL是Common Business-Oriented Language(公用面向商业的语言)的缩写,主要供数据处理、数据收集及分析之用。
COBOL自60年代初开始广泛应用于计算机应用领域(商业和其他领域)。
事实上,除了商业之外,各种管理工作都广泛使用COBOL,如各种统计工作,财会工作,企业计划编制,作业制度,情报检索,人事管理等。
COBOL 针对商业世界的使用,是真正商用应用程序开发的首选语言。
1.适于数据处理领域。
2.采用英语语法的高级语言,可读性、可维护性、可移植性较强。
3.通用性强,标准化程度较高。
4.结构严谨,层次分明。
5.缺点是比较繁琐。
二.最简单的COBOL程序介绍例1:IDENTIFICATION DIVISION.(标识部)PROGRAM-ID. EXAM1.(程序标识段)ENVIRONMENT DIVISION.(设备部)DATA DIVISION.(数据部)PROCEDURE DIVISION.(过程部)A. DISPLAY ‘THIS IS A COBOL PROGRAM.’.STOP RUN.例2:IDENTIFICATION DIVISION.(标识部)PROGRAM-ID. EXAM2.(程序标识段)ENVIRONMENT DIVISION.(设备部)DATA DIVISION.(数据部)WORKING-STORAGE SECTION.(工作单元节)77 A PICTURE IS 9(3).(对A进行描述)77 B PICTURE IS 9(3).(对B进行描述)PROCEDURE DIVISION.(过程部)S. ACCEPT A.(输入A值)ACCEPT B.(输入B值)ADD A TO B.(A+B->B)DISPLAY A,B.(显示A和B值)STOP RUN.三.COBOL程序的结构1.部每个程序都包括四个部:IDENTIFICATION DIVISION(标识部)提供程序的一般性文档说明,主要用来指定源程序名。
Cobol基本语法总结
コボル基本語法一、COBOL基本語法compla項目使用的Cobol是Micro Focus 公司生产的Cobol,采用在HP-UNIX上运行。
一、cobol的书写格式(每行)1、前6列为序号区(一般不编辑)2、第7列为标示列,仅可以写如下几个标示符。
a. “*”注释符(注释当前行的代码)b “/“注释符(注释当前行的代码,程序编译时,强制程序清单另起一页,不建议使用)c “-“字符串连接符d “D”DEBUG行标示符(程序为DEBUG模式时,标有该标示符的语句行代码执行,否则和注释行效果一样)3、第8列---11列为A区,包括以下内容。
a 部、节名。
b 层号014、第12列---72列为B区,过程部的程序必须写在B区中。
5、第72以后部分不能编辑。
二、cobol的语法结构(几大部分)1、标示部(IDENTIFICATION DIVISION):提供程序的一般性文档说明,本项目只保留程序名(PROGRAM-ID)一项。
2、环境部(ENVIRONMENT DIVISION): 提供程序外部有关的项目。
a.配置节(CONFIGURATION SECTION)①.指定源计算机(SOURCE-COMPUTE).②.目标计算机(OBJECT-COMPUTE).③.设置debug模式(SOURCE-COMPUTE H9000V WITH DEBUGGING MODE)④. 指定读环境变量设置.SPECIAL-NAMES.ENVIRONMENT-VALUE IS CNS-ENV-PARMENVIRONMENT-NAME IS CNS-ENV-NAME.b. 输入输出节(INPUT-OUTPUT SECTION).文件的物理路径的定义。
方法一:(写死文件路径)SELECT FILE-LOG ASSIGN"/usr3/WSI/commonlog/WSI1101.log"ORGANIZATION IS LINE SEQUENTIAL.方法二:(过程部中动态指定文件)SELECT FILE-LOG ASSIGN TO SELECT-FILEORGANIZATION IS LINE SEQUENTIAL.在数据部定义字符串变量SELECT-FILE,在文件FILE-LOG打开前动态指定文件路径。
cobol面试题及答案
cobol面试题及答案在现代信息技术的迅猛发展下,COBOL(COmmon Business-Oriented Language)作为一种面向商业应用的编程语言,仍然在许多企业和金融机构中得到广泛应用。
对于那些希望从事与COBOL相关的工作或者招聘COBOL开发人员的企业来说,面试是一个非常重要的环节。
本篇文章将介绍一些常见的COBOL面试题及其答案,帮助读者准备面试或者了解该编程语言的一些基本概念。
1. 什么是COBOL?COBOL是一种旨在处理商业数据的高级编程语言。
它于1960年代诞生,并在当时就被广泛用于大型计算机系统中。
COBOL采用英语类似的描述性语法,旨在提高可读性和可维护性。
2. COBOL的优点是什么?COBOL在商业领域中具有许多优点,包括:- 可读性高:COBOL使用自然语言类似的描述性语法,易于理解和维护。
- 跨平台兼容性:COBOL可在多个计算机平台上运行,为企业提供了更大的灵活性。
- 大规模数据处理:COBOL适用于大量数据的处理,因此被广泛应用于金融和保险等领域。
3. COBOL中的数据类型有哪些?COBOL支持以下几种数据类型:- 数字(Numeric):包括整数(整数)和浮点数(小数)。
- 字符串(Alphanumeric):用于存储文本数据。
- 日期和时间(Date and Time):用于存储日期和时间信息。
- 表(Table):用于存储多个值的集合。
4. 如何定义一个COBOL程序的入口点?在COBOL中,程序的入口点是通过IDENTIFICATION DIVISION 中的PROGRAM-ID子句来定义的。
例如:IDENTIFICATION DIVISION.PROGRAM-ID. MYPROGRAM.5. COBOL中的条件语句有哪些?COBOL中常见的条件语句包括IF语句和EVALUATE语句。
IF语句用于基于给定条件执行不同的代码块,而EVALUATE语句则用于根据不同的条件执行不同的操作。
cobol考前知识点 (1)
U11.COBOL是Common Business Oriented Language (通用商业语言)2. COBOL的组成部分:(1)标识部(IDENTIFICATION DIVISION):用于标识程序名(一般不超过8位)。
在标识部下面不设节.直接设段(2)环境部(ENVIRONMENT DIVISION):用于说明程序运行的环境。
(3)数据部(DATA DIVISION):用于说明程序中涉及的所有数据。
数据部下设节,节下面是描述体(4)过程部(PROCEDURE DIVISION):是程序的核心部分,它决定计算机应进行什么操作。
过程部可以设节,下面再设段,也可以直接设段(部-节-段-句子-语句-子句)3.COBOL 源程序的书写格式:第1 至6 列为―标号区‖。
第7列为―续行标志区‖。
第8至此11列,称为―A区‖。
程序中有些内容如部头,节头,段头,层号01,层号77 及文件描述符FD等应从A区开始写。
第12至此72列,称为―B区‖。
写程序中的正文部分。
如过程部中的句子只能从B 区开始写。
第73至80列,称为―注释区‖。
书写注意事项:运算符(如加、减、乘、除、乘方)和等号左右两边必须各留一个空格。
在过程部中左括号的左侧和右括号的右侧要留一空格,而内侧不必留空格。
逗号、句号、分号的左边不能留空格,而右边应有空格。
4.COBOL语言的元素―#‖―!‖―?‖―%‖只能在COBOL程序中的字符串中出现。
每一个COBOL字不能超过30个字符。
5.数据名的定名规则(1)每个数据名的长度为1-30个字符之间。
(2)只能由字母数字和连接符―-‖组成,而且其中至少应有一个字母。
连接符只能出现在数据名的中间。
(3)数据名中不能出现空格。
(4)不应选择COBOL的保留字作为数据名。
(5)并不要求数据名是有意义的英文字。
6.COBOL程序的运行JCLU21.标识部(1)必写部分IDENTIFICATION DIVISION. (标识部)PROGRAM-ID. 程序名. (程序标识段)程序名不超过30个字符。
cobol学习笔记_1231培训资料
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: 程序用到的所有数据的类型和占用内存的情况。
COBOL经典面试题库(中文)
COBOL经典面试题库(中文)COBOL经典面试题库Q1:列举COBOL的DEVISIONA1:标识部,环境部,数据部,过程部Q2:COBOL有哪些可用的数据类型A2:字符型(这里指的是包含字母和数字),字母型,数字型Q3:INITIALIZE这个词做了些什么A3:将字母,字符,数字区域都置成空格(置空),将数字区置0,FILLER和OCCURS DEPENDING ON项不处理Q4:77层有什么作用A4:基本层数据项,不能用做细分别的层,也不能被细分(来源:)Q5:88层有什么作用A5:条件逻辑层Q6:66层有什么作用A6:重命名层Q7:IS NUMERIC这个子句怎么确定(也就是说确定句子的真值)A7:IS NUMERIC用在字符项,带符号数字,浮点数,不带符号数。
如果目标项只含0~9则返回TRUE。
但是,如果待测项目是个带符号数,那么他就含有0-9还有+和-05 ARRAY1 PIC X(9) OCCURS 10 TIMES.05 ARRAY2 PIC X(6) OCCURS 20 TIMES INDEXED BY WS-INDEXQ8:COBOL中怎么建表/数组A8:如上.Q9:OCCURS 子句能用在第一层吗A9:不能Q10:索引和下标有什么区别A10:下标可以指定数组中任意中位置的元素(只要知道其下标),下标只能是数字型常量或者数字型变量(但是不能在指定的时候修改,如:A(K+1)这样是不行的,要修改的话要在指定的外部改,如:ADD 1 TO K,而索引的话是从表头/数组头开始检索(以BY N的指定检索规律往后滚)再者,索引只能通过PERFORM, SEARCH 和SET来修改,如果要在一个表中使用SEARCH, SEARCH ALL,那这个表就要有索引(因为SEARCH, SEARCH ALL的参数中指定索引,所以即使其有很多限制还是得用它)Q11:SERACH和SERACH ALL有什么区别A11:SEARCH是顺序查找SERACH ALL 是2叉查找(相信数据结构学过2叉树的都不会陌生),在使用SEARCH ALL前表必须有一个递增/递减的KEY,并且表已经按照其KEY值排序了,这样才能使用SEARCH ALLQ12:为了使用SEARCH ALL,存贮顺序是怎么样的A12:他必须是递增或者是递减的,默认地政。
COBOL
COBOL简易教程主要内容1.COBOL语言的基本概念及程序的结构∙关于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语言的基本概念及程序的结构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(过程部〕用来给出程序要执行的指令,使计算机产生相应的操作,例如进行数学运算。
Removed_cobol考前知识点 (1)
U11.COBOL是Common Business Oriented Language (通用商业语言)2. COBOL的组成部分:(1)标识部(IDENTIFICATION DIVISION):用于标识程序名(一般不超过8位)。
在标识部下面不设节.直接设段(2)环境部(ENVIRONMENT DIVISION):用于说明程序运行的环境。
(3)数据部(DATA DIVISION):用于说明程序中涉及的所有数据。
数据部下设节,节下面是描述体(4)过程部(PROCEDURE DIVISION):是程序的核心部分,它决定计算机应进行什么操作。
过程部可以设节,下面再设段,也可以直接设段(部-节-段-句子-语句-子句)3.COBOL 源程序的书写格式:第1 至6 列为“标号区”。
第7列为“续行标志区”。
第8至此11列,称为“A区”。
程序中有些内容如部头,节头,段头,层号01,层号77 及文件描述符FD等应从A区开始写。
第12至此72列,称为“B区”。
写程序中的正文部分。
如过程部中的句子只能从B区开始写。
第73至80列,称为“注释区”。
书写注意事项:运算符(如加、减、乘、除、乘方)和等号左右两边必须各留一个空格。
在过程部中左括号的左侧和右括号的右侧要留一空格,而内侧不必留空格。
逗号、句号、分号的左边不能留空格,而右边应有空格。
4.COBOL语言的元素“#”̖“!” “?”̖“%”只能在COBOL程序中的字符串中出现。
每一个COBOL字不能超过30个字符。
5.数据名的定名规则(1)每个数据名的长度为1-30个字符之间。
(2)只能由字母数字和连接符“-”组成,而且其中至少应有一个字母。
连接符只能出现在数据名的中间。
(3)数据名中不能出现空格。
(4)不应选择COBOL的保留字作为数据名。
(5)并不要求数据名是有意义的英文字。
6.COBOL程序的运行JCLU21.标识部(1)必写部分IDENTIFICATION DIVISION. (标识部)PROGRAM-ID. 程序名. (程序标识段)程序名不超过30个字符。
011第一讲COBOL简述及基本语法共41页
B.
句子用句号”.”作为结束标志.句号后面至少应该有一个空格,句子又 由若干语句组成,每个语句之间用空格,逗号”,”或分号”;”分开,(逗号, 分号后面应有一个以上空格,所以通常用空格分来).每个语句后面接着 操作对象或操作内容,完成独立的计算机操作.例如ACCEPT A表示从 键盘接受数据,送入A中(相当于C语言的scanf和C++的cin).数据部, 环境部中也可以出现子句.
书写节头,后面要加SECTION,节头独占一行,段头只写段名,段名可以独占 一行,也可以和下面的语句同占一行.
2007/11/3
14
© 2007 IBM Corporation
COBOL程序结构:句子,语句,子句
在过程部中,每段由若干句子组成,上例的过程部由4个句子组成.第一句
ACCEPT
A
ACCEPT
02
A
PIC S9999.
A中含有-1234,当显示A时,给出的信息是123M.若想显示出带符号的 数字,应该把含有”S”描述的数据项传送到含有正负号编辑型 描述字符的变量中再显示.
2007/11/3
24
© 2007 IBM Corporation
变量的定义
(2)字符型描述符”A” a, 用”A”描述的变量,只能存放英文字母或空格.例如: 02 A PIC A(7). 表示变量A中可以存放7个字符.
数据名,接着写PIC保留字,最后写变量描述字符和句号.PIC子句应该从B区开 始。下面具体叙述描述字符串.
(1) 数值型变量的描述
a. “9”描述
“9”描述表示实际的或概念上的数据位上有一个数字.
例: 02 B
PIC 9999.
表示变量B可以放入四位整数数字,范围从0~9999,可以简写为
克伯屈知识点总结
克伯屈知识点总结COBOL语言有其自己的特点和规则。
了解并掌握这些知识点对于学习和使用COBOL语言非常重要。
以下是COBOL的一些重要知识点总结:1. COBOL基本结构COBOL程序由四个部分组成:标识部、分区部、控制部和数据部。
标识部用于标示程序的名称和作者等信息;分区部用于标示程序的结构和流程;控制部用于定义程序的执行方式;数据部用于定义程序中所用到的数据。
2. COBOL变量和数据类型COBOL支持多种数据类型,如数字、字符、日期等。
COBOL中的每个变量都必须在数据部中进行定义,并且要明确指定其数据类型和长度。
3. COBOL程序结构COBOL程序由多个部分组成,每个部分都有自己的目的。
标识部用于标识程序的名称和作者等信息;分区部用于标示程序的结构和流程;控制部用于定义程序的执行方式,如分支和循环等;数据部用于定义程序中所用到的数据。
4. COBOL语句COBOL语句包括:声明语句、执行语句、控制语句和输入输出语句等。
声明语句用于定义变量和数据;执行语句用于执行某些动作;控制语句用于控制程序的流程;输入输出语句用于程序与外部环境进行数据交互。
5. COBOL数据处理COBOL提供了多种方法来处理数据,如算术操作、逻辑操作和字符串操作等。
6. COBOL程序调试在COBOL程序出现问题时,需要进行调试。
COBOL程序的调试通常使用调试器工具,通过设置断点、单步执行等方法来进行调试。
7. COBOL文件处理在COBOL程序中,经常需要对文件进行读写操作。
COBOL提供了一套文件处理语句来进行文件的读写操作。
8. COBOL程序优化在实际应用中,有时需要对COBOL程序进行优化,以提高性能。
COBOL程序优化包括对程序结构和算法的优化,以及对IO操作和数据处理的优化。
以上是COBOL语言的一些重要知识点总结,这些知识点对于学习和使用COBOL语言非常重要。
要想在COBOL领域取得成功,必须深入理解并掌握这些知识点。
COBOL谭浩强版学习笔记
COBOL资料整理COBOL语言概述一.COBOL程序的结构1.部IDENTIFICATION DIVISION 标识部ENVIRONMENT DIVISION 环境部DA TA DIVISION 数据部PROCEDURE DIVISION 过程部2.节(SECTION)和段(PARAGRAPH)(1)部-节-段(2)标识部下面不设节,直接设段(3)过程部可以设节,下面再设段,也可以直接设段3.句子、语句和子句每一段由若干句子(Sentence)组成,一个句子以句号加上一个以上的空格来结束。
句子由语句(Statement)组成。
语句中又可以包含若干子句(clause),每一个子句也有一个动词(但这个动词往往是可以省略的),它指定某一方面的特定功能。
二.COBOL源程序的书写格式1.1-6列:标号区2.第7列:续行标志区(“-”为续行,“*”为注解)3.8-11列:A区(部头,节头,段头,层号01、77,文件描述符FD等)4.12-72列:B区(正文)5.73-80列:注释区三.COBOL字符数字0-9,大写字母A-Z,小写字母a-z,专用字符15个{ + - * / = , . ; ‘( ) < > $ 空格}四.常量1.数值常量(1)小数点不能多于一个,而且不能出现在常数最右边。
(2)数值常量的长度不能超过18位数字。
(3)至少要有一个数字,不能有多于一个符号。
(4)数字间不能有空格,空格是分界符。
2.非数值常量(1)用’’把字符串包起来(2)假如要把’’放到非数值常量中,用QUOTE保留字,如MOVE QUOTE ‘CHINA’QUOTE TO A(3)长度不应超过120个字符。
3.表意常量表意常量所表示的值初等项初等项过程部初步一.输入输出语句1.ACCEPT(接收语句):直接从中断键盘或系统指定的输入设备上输入少量的数据。
语法:ACCEPT 标识符[FROM 助忆名]2.READ(读语句):从外部文件上读入数据输到程序中的数据项中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
U11.COBOL是Common Business Oriented Language (通用商业语言)2. COBOL的组成部分:(1)标识部(IDENTIFICATION DIVISION):用于标识程序名(一般不超过8位)。
在标识部下面不设节.直接设段(2)环境部(ENVIRONMENT DIVISION):用于说明程序运行的环境。
(3)数据部(DATA DIVISION):用于说明程序中涉及的所有数据。
数据部下设节,节下面是描述体(4)过程部(PROCEDURE DIVISION):是程序的核心部分,它决定计算机应进行什么操作。
过程部可以设节,下面再设段,也可以直接设段(部-节-段-句子-语句-子句)3.COBOL 源程序的书写格式:第1 至6 列为―标号区‖。
第7列为―续行标志区‖。
第8至此11列,称为―A区‖。
程序中有些内容如部头,节头,段头,层号01,层号77 及文件描述符FD等应从A区开始写。
第12至此72列,称为―B区‖。
写程序中的正文部分。
如过程部中的句子只能从B 区开始写。
第73至80列,称为―注释区‖。
书写注意事项:运算符(如加、减、乘、除、乘方)和等号左右两边必须各留一个空格。
在过程部中左括号的左侧和右括号的右侧要留一空格,而内侧不必留空格。
逗号、句号、分号的左边不能留空格,而右边应有空格。
4.COBOL语言的元素―#‖―!‖―?‖―%‖只能在COBOL程序中的字符串中出现。
每一个COBOL字不能超过30个字符。
5.数据名的定名规则(1)每个数据名的长度为1-30个字符之间。
(2)只能由字母数字和连接符―-‖组成,而且其中至少应有一个字母。
连接符只能出现在数据名的中间。
(3)数据名中不能出现空格。
(4)不应选择COBOL的保留字作为数据名。
(5)并不要求数据名是有意义的英文字。
6.COBOL程序的运行JCLU21.标识部(1)必写部分IDENTIFICATION DIVISION. (标识部)PROGRAM-ID. 程序名. (程序标识段)程序名不超过30个字符。
(2)任选部分[AUTHOR. 作者姓名.][INSTALLATION. 计算机设置的场所.][DATE-WRITTEN. 源程序编写的日期.][DATE-COMPILED. 源程序编译的日期.][SECURITY. 保密程度.]2.环境部(1)配置节(CONFIGURATION SECTION)包括三段:源计算机段(编译源程序时使用的计算机)、目标计算机段(经过编译后所得到的目标程序运行时所使用的计算机)、专用名段格式:CONFIGURATION SECTION. (配置节)SOURCE-COMPUTER. 源计算机名OBJECT-COMPUTER. 目标计算机名[MEMORY SIZE IS 整数{WORDS/CHARACTERS/MODULES}]SPECIAL-NAMES. 专用名描述项[专用名IS 助记名.](2)输入输出节分为输入输出控制段与文件控制段。
输入输出控制段作用是可以指定目标程序运行时,几个文件共用一个内存区。
文件控制段是为内部文件分配外部文件。
文件控制段格式:INPUT-OUTPUT SECTION. (输入输出节)FILE-CONTROL. (文件控制段)SELECT 内部文件名ASSIGN TO 外部文件名.3.说明:SELECT的三种用法(1)在SELECT子句的―ASSIGN TO‖的后面写上磁盘上实际的文件名。
Select file1 assign to c:cob.file1.dat(2)在SELECT子句中只指出外部设备名,在数据部的文件节中FD描述体中用V ALUE OF子句来指出实际文件名。
Select file1 assign to disk.value of file-id ―c:cob.file1.dat‖.( 数据部的文件节中)(3)在大型计算机系统,在SELECT子句中用该系统指定的逻辑名作为外部文件名,然后用作业控制语句将该逻辑名与实际的设备和文件相联系。
U31.数据部层次(1)用来描述数据层次结构的层号从01开始,到49。
记录的最高层次定为01号。
(2)数据的层次结构:记录- 组合项- 初等项(3)层号小的组合项包含层号大的数据项(组合项或初等项)。
(4)层号:从01~49层用列描述具有层次机构的数据项,77层用来描述独立的数据项,66和88是特殊层2.数据部的结构(1)文件节(FILE SECTION)用来描述程序中用到的输入文件和输出文件及其记录中各数据项的属性。
(2)工作单元节(WORKING-STORAGE SECTION)用来描述程序中用到的中间数据项。
(3)联接节(LINKAGE SECTION)用来描述与调用程序间发生数据传递的数据项。
(4)报表节(REPORT SECTION)为了完成报表编制功能,此节用来规定欲输出的报表的―体裁―,设计各报表栏的打印形式和方法等3.文件节(1)文件描述格式:FD 文件名LABLE RECORD IS STANDARDRECORDS ARE OMITTEDDATA RECORD IS 记录名RECORDS ARE 记录名1,记录名2.(2)记录描述记录描述体由01层号开头,后跟记录名。
如果记录下面不再分项,即记录本身就是一个初等项,则这种描述体最简单。
(3)文件节的书写格式:FD从A区开始书写,01层号也从A区开始,其它层号可以从A区也可以从B区开始。
为了看起来层次分明,最好从B区开始。
4.数据描述符―9‖―V‖―S‖编辑型描述符―.‖―,‖―B‖(空格)―Z‖ ―*‖(在高位零的位置上代以空格或‗*‘)― +‖―–‖(描述符‗+‘,一律加符号。
描述符‗-‘只对负值加负号)― $‖5.工作单元节(WORKING-STORAGE SECTION)(1)非输入输出的数据就应在工作单元节中描述。
(2)在工作单元节中描述的数据项也有有两种形式:一种是孤立的数据项,它们是初等项。
一种是组合项。
COBOL规定,孤立的数据项的描述体以层号77开头,组合项描述体以01到49之间的一个数作层号。
在次序上常先写77层,再写01-49层。
6.V ALUE子句:用于给变量赋初值。
如:02 A PIC 9(3)V ALUE 123。
注意:(1)只有对工作单元节中的数据项才能赋初值,不能对文件节中输入输出文件中的数据项赋初值。
(2)如果在组合项的描述体中使用V ALUE,初值只能是表意常量或非数值型常量。
对组合项整体而言,一律按字符型数据项处理。
02 A V ALUE ‗123456‘.03 A1 PIC 99. (12)03 A2 PIC 99. (34)03 A3 PIC 99. (56)是可以的,并且A1,A2,A3可以进行运算。
但如果02 A V ALUE 123456. 则是错误的。
(3)当用一个带符号的数值作初值时,相应的PIC子句中应有‗S‘描述符,否则符号无效。
77 D PIC S99 V ALUE -21.(4)赋初值时应该注意类型的一致性。
77 D PIC X(4) V ALUE 1.22 (错误)(5)V ALUE子句给出的值应适合PIC子句的描述范围,否则会出现截断或产生错误。
7.用法子句(USAGE子句)作用:可以使程序设计者自由选择数据在内存中的存放形式。
格式:[USAGE IS] DISPLAY/COMPUTATIONAL/COMP说明:DISPLAY (标准数据形式,一个字节放一个字符)COMPUTATIONAL (定点二进制形式)/COMPCOMPUTATIONAL-1 (内部短浮点形式)/COMP-1COMPUTATIONAL-2 (内部长浮点形式)/COMP-2COMPUTATIONAL-3 (内部十进制形式)/COMP-3如省略USAGE子句,则隐含表示为用DISPLAY形式。
注意:(1)字符型、字母型、编辑型、外部十进制、外部浮点数形式的数据项必须为USAGE DISPLAY(一般均省略该子句)(2)USAGE子句指定的数据存储形式不能和PIC子句指定的数据类型矛盾。
(3)长、短浮点数形式自然确定了内存长度,不应用PIC子句•01 A1 COMP-1.•01 B1 COMP-2.8.符号子句(SIGN子句)(1)SIGN子句用来指定数值型数据描述体中运算符号的状态和位置(2)在没有SIGN子句时,数值的符号是存放在数据项最近最后一个字节•02 A PIC S9(3) USAGE DISPLAY SIGN IS LEADING. (缺省时默认)(3)指定符号单多占一个字节,用―SEPARATE ‖可选项(4)SIGN 子句的一般格式:注意:• 只能用于PIC 字符串中含有―S ‖的数值型描述体中 • 使用SIGN 子句的数据项用法应当是USAGE DIPLAY 。
而不能用于计算型的数据项用SEPARATE 可选项时,内存中增加了一个字节,用来放符号标志• 如果一个数据项的描述体中包含SIGN 子句,则数据项的值应包括正或者负的符号,否则会出错9.重定义子句(REDEFINES 子句)(1)共用内存中的同一段空间02 A PIC X(5).02 B REDEFINES A PIC 9(5).• 层号 数据名1 REDEFINES 数据名2(2)说明: 1.数据名2 与数据名1的层号必须相同。
2.用REDEFINES 子句的描述体应该紧跟在被重新定义的数据项的描述之后,中间不能插入其它项的描述说明。
3.可以多次重定义,但必须紧跟出现,而且要求使用最初定义的数据名。
4.REDEFINES 子句不能用于文件节的01层中。
5.用REDEFINES 子句可以改变数据结构,但数据名1、2的长度应该相等。
6.REDEFINES 子句应在其它子句之前。
7.重定义子句所在的数据描述体中不能使用初值子句赋初值。
.(3)组合项的重定义子句,如:• 02 A.• 03 A1 PIC 9(4).• 03 A2 PIC X(6). 共14字节• 03 A3 PIC X(4).[][]CHARACTER SEPARATE TRAILING LEADING IS SIGN ⎭⎬⎫⎩⎨⎧•02 B REDEFINES A.•03 B1 PIC X(5).•03 B2 PIC 9(6). 共14字节•03 B3 PIC 99V9.10.重命名子句(RENAMES子句)(1)将原来已定义的数据项重新组合成为一个新项,并以一个新名字来代表它。
(2)格式:66 数据名1 RENAMES 数据名2 [THRU 数据名3]01 A V ALUE '123456'.02 A1 PIC 9.02 A2 PIC 9.02 A3 PIC XX.02 A4 PIC 99.66 B RENAMES A1 THRU A3.结果A=123456B=1234(3)说明:(一)层号只能用66,它必须紧跟在01层记录中最后一个数据描述体之后,因为它是对记录中有关部分重新组合和命名的。