精品课程第3章-COBOL程序结构.ppt_第1页
精品课程第3章-COBOL程序结构.ppt_第2页
精品课程第3章-COBOL程序结构.ppt_第3页
精品课程第3章-COBOL程序结构.ppt_第4页
精品课程第3章-COBOL程序结构.ppt_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单位 大连理工大学作者 陆坤 李凤岐 姜厚云 1 大型主机平台系统应用开发基础 教育部 IBM精品课程 2 第三章COBOL程序结构 3 1标识部3 2环境部3 3数据部3 4过程部 3 第一节标识部 标识部概述标识部的必写部分标识部的任选部分标识部样例 标识部概述 标识部是COBOL程序的第一部分 用来为程序设定标志 以便识别 每个程序 包括主程序和子程序 都必须有一个名字 系统按名字对程序管理和调用标识部还可以包含文档记录信息 用作备忘 如 作者 写程序的日期 保密程度等标识部下面不设置节 只设置段 部头和段头都从A区开始书写书写格式 IDENTIFICATIONDIVISION IDDIVISION 标识部的必写部分 PROGRAM ID program name 应有意义或按照公司规定的命名规则起名 只能使用字母 数字和连字符 最少一个字母 不能以连字符开头或结尾 最长30个字符 标识部的任选部分 AUTHOR 记录编程员姓名 可增加荣誉感和责任感INSTALLATION 指定设计该程序的公司或部门DATE WRITTEN 记录每次程序编写 修改日期DATE COMPILED 记录程序被编译的日期SECURITY 列出谁有权访问该程序 该段只是记录并不实际保护代码 标识部样例 IDENTIFICATIONDIVISION PROGRAM ID EXAM32 AUTHOR JIANGHY INSTALLATION DLUT IBMCENTER DATE WRITTEN 2007 5 1 DATE COMPILED 2007 5 1 SECURITY IBMUSERTE007CANUSETHISPROGRAM 8 第二节环境部 环境部概述配置节输入输出节环境部样例 环境部概述 环境部用来说明程序运行的软硬件环境 是COBOL程序中唯一与设备相关的部分 将程序中用到的内部文件与外部设备建立起联系环境部包括两个节 配置节和输入输出节一般格式 ENVIRONMENTDIVISION CONFIGURATIONSECTION INPUT OUTPUTSECTION 配置节和输入输出节都是可选的 当使用外部文件时必写输入输出节 配制节 配置节包含三个段SOURCE COMPUTER computer name 标识对该COBOL程序进行编译的计算机OBJECT COMPUTER computer name 标识运行该COBOL程序的计算机SPECIAL NAMES 用来通知系统把原来规定的设备名或符号改为用户自己指定的名字或符号CURRENCYSIGNIS 是默认货币符号 可使用非数值常量DECIMAL POINTISCOMMA用逗号代替小数点注1 SOURCE COMPUTER和OBJECT COMPUTER可以是不同的计算机 但必须兼容 在COBOL 74中必需注2 若主程序中已设置了配置节 则子程序不必再设置 输入输出节 程序中如果用到输入输出文件 就在该节把程序中的内部文件和外部设备联系起来输入输出节包括两个段FILE CONTROL 文件控制段I O CONTROL 输入输出控制段只要用到INPUT OUTPUT节 就必写FILE CONTROL段I O CONTROL段指定目标程序运行时多个文件共用一个内存区以节省内存 环境部样例 ENVIRONMENTDIVISION INPUT OUTPUTSECTION FILE CONTROL SELECTIND1ASSIGNTOINPUTFILE SELECTOUTD1ASSIGNTOOUTPUTFILE 注 IND1和OUTD1是内部文件名 用于COBOL程序内部INPUTFILE和OUTPUTFILE是JCL中的DDNAME 用于指定待操作的数据集 13 第三节数据部 数据部的作用和结构数据的层次和层号工作单元节文件节 数据部的作用和结构 数据部是COBOL程序中的第三部分 程序中涉及到的全部数据 输入 中间 输出 都要在此定义用数据部将数据定义和数据 加工 过程分离 使任务单纯清晰 便于程序的书写 修改和阅读所有数据项都应在数据部中对其属性进行描述数据类型 数值 字符 和存储形式 长度 数据项间的关系 层次和层号 文件与记录的关系 数据部的作用和结构 根据数据项的用途不同 数据部可以分为 文件节 FILESECTION 与文件输入输出相关的数据项工作单元节 WORKING STORAGESECTION 程序中使用的其它数据项联接节 LINKAGESECTION 子程序参数 数据的层次和层号 COBOL中把有从属关系的数据用层次关系来描述 数据的层次结构是 文件 file 记录 record 字段 field 组合项 groupitem 初等项 elementaryitem 数据的层次和层号 数据的层次和层号 数据的层次和层号 数据的层次和层号 数据的层次和层号 层次规定如下 描述层次结构的层号从01 49 层号越大层次越低 层号66 77 88有特殊用途从属项的层号比其上属项的层号大 但层号不必连续如果多个数据项都从属于同一组合项但互不从属 则这几个数据项应具有相同的层号如果多个数据项都不属于同一组合项且互不从属 则这几个数据项可以有不同的层号一个层号为N的组合项包括它下面所有层号比它大的数据项 直到遇到小于或等于N的层次为止 数据的层次和层号 01TIME RECORD 03NAMEPICX 20 03WORKER NUMBERPIC9 6 03WEEKS END DATE 05MONTHPIC99 05DAY NUMBERPIC99 05YEARPIC9 4 03HOURS WORKED 10REGULARPIC99 10OVERTIMEPIC99 工作单元节 程序中用于非文件输入输出的数据项 如运算的中间结果等 必须在工作单元节中描述在工作单元节可以为数据项赋初值 工作单元节 程序中某些数据项需要赋初值 例如用于循环的累计数据项 或事先置空的字符数据项77KPIC99VALUE0 77NAMEPICX 10 VALUESPACE 01R 02R1PICS99V99VALUE 1 2 02R2PICX 13 VALUE COBOLPROGRAM 工作单元节 注意 a 只有工作单元节的数据项可以赋初值b 如果在组合项的描述体中使用VALUE子句 初值只能是表意常量或非数值型常量 例如 01AVALUE 1234 或01AVALUEZERO 02A1PIC99 02A2PIC99 则A1 12 A2 34两者都可以做数值运算c 当用一个带符号的数值作初值时 相应的PIC子句中应有 S 描述符否则初值无效例如 77BPICS99VALUE 22 工作单元节 d 赋初值应注意类型的一致性 表意常量既可作为数值常量又可作为非数值常量77CPICX 3 VALUE123 错误 123是数值型77DPICX 3 VALUE 123 77EPIC9 3 VALUEZERO 数值0 可用于计算77FPICX 3 VALUEZERO 000e 初值应适合PIC子句描述的范围 否则会出现截断或产生错误77GPICS99VALUE345 6 G 4577HPICX 3 VALUE COBOL H COB 文件节 程序中每个输入 输出文件的数据格式都要在此描述 包括 文件名称和属性文件中包括的记录的名字每个记录中数据的层次关系记录中各数据项的数据形式和占内存的大小 文件节 文件描述体用来描述文件与记录的属性 格式如下 FD内部文件名子句列表 LABELRECORDISSTANDARD OMITTED磁盘 带 文件带有标号记录 应定义为 标准的标号记录 打印文件没有标号记录的 应定义为 标号记录省略 DATARECORDISRECORD NAME指定该文件所使用的记录的名称RECORDCONTAINSNCHARACTERS定义每个记录包含的字符数 文件节 记录描述体用于定义缓冲区的数据格式 输入 输出 即各下层数据项的数据类型和长度 格式如下 01记录名 02数据项1PIC 02数据项2PIC 如果记录下面不再分项 即记录本身就是一个初等项 则可以定义成 01记录名PICX 文件节 文件描述FD和层号01必须从A区 8 11列 开始书写其它层号可以从A或B区开始书写 为使层次楚 最好从B区开始按层次关系写成锯齿形状 如 01A1 02B1 03C1PIC 03C2PIC 01A2 02B2PIC 文件节 32 第四节过程部 过程部概述过程部常用语句 过程部概述 过程部是COBOL程序的核心 有以下三个特点 1 过程部 PROCEDUREDIVISION 是程序的第四部分 部头必须从A区 8 11列 开始书写2 过程部的语句必须从B区 12列之后 开始书写3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论