GB T 4092.5-1992 程序设计语言COBOL 相对I-O模块.pdf
《GB T 4092.5-1992 程序设计语言COBOL 相对I-O模块.pdf》由会员分享,可在线阅读,更多相关《GB T 4092.5-1992 程序设计语言COBOL 相对I-O模块.pdf(20页珍藏版)》请在麦多课文档分享上搜索。
1、中华人民共和国国家标准程序设计语言相对 模块发布 实施国家技术监督局 发布中华人民共和国国家标准程序设计语言相对 模块代替国家技术监督局 批准 实施引言功能相对 模块提供以随机方式或顺序方式存取海量存储器上的文卷的记录的功能 相对文卷中的每一个记录都用一个大于零的整数唯一地标识该整数指明文卷中记录的逻辑顺序位置级别特征级相对 对文卷控制款文卷描述款和 段中的款提供局部功能 在过程部中级相对 对 和 语句提供局部功能 而对提供完整功能级相对 对文卷控制款文卷描述款及 段中各款提供了完整功能 在过程部中 级相对 对 和 语句提供了完整功能语言概念组织相对组织文卷是一个海量存储文卷 任何记录可以通过
2、提供相对记录号的值来存储或检索这种文卷也可以认为是由一串区域组成 每一个区域能存放一个逻辑记录 每个区域由一个相对记录号命名 根据这个号存储和检索记录 例如 第 个记录是相对记录号为 且在第 个记录区域中的一个记录 不管第 到第 个记录区域是否已写过为了在相对文卷中更有效地存取记录 在媒体上为存储一个特定逻辑记录而保留的字符位置数可以不同于在程序中描术的那个记录的字符位置数存取方式对于相对组织在其顺序存取方式中记录存取的次序就是该文卷中所有现存记录的相对记录号的递增次序 只有当前存在于文卷中的记录是有效的语句可以用于为其后一系列顺序检索建立一个开始点在随机存取方式中输入输出语句用于按程序员指定
3、的次序存取记录 要存取所需的记录就把它的相对记录号存放在相对键数据项中在动态存取方式中程序员可以利用适当的输入输出语句随意地把顺序存取改变成随机存取文卷位置指示符文卷位置指示符是本标准中为了便于在某一输入输出操作中指明给定的文卷中要存取的下一个记录而使用的一个概念实体 文卷位置指示符概念对按输出或延伸方式打开的文卷是无意义的 文卷位置指示符的值只受 和 语句的影响状态状态是一个两字符的概念实体 赋给它的值指明了或 语句执行期间的状态指明了与该 语句相联系的任一命令语句执行之前的状态 或任一可应用的 过程执行之前的状态 通过使用该文卷的文卷控制款中的 子句使 状态值对 程序是可用的状态也决定是否
4、执行一个可用的 过程 如果不是包含在标题 成功的结束下的任何条件 则这个过程可以根据其它地方所述的规则执行 如果是在标题成功的结束 下列出的一个条件则不执行这种过程见 语句某些类的 状态值指出关键错误条件 它们是 任何以数字 或 和任何由实现者作为关键定义的以数字 开始的错误条件 如果输入输出操作的 状态值指出这种错误条件那么实现者确定在执行任何可用的 过程之后所要采取的动作 或者若没有可用的上述过程 则实现者确定输入输出控制系统错误标准处理之后采取什么动作状态根据输入输出操作完成的情况表示下列条件之一成功的结束 成功地执行输入输出语句到末端 作为末端条件的结果 顺序的 语句执行不成功无效键
5、作为一个无效条件的结果输入输出语句执行不成功永久性错误 由于发生了阻止文卷的进一步处理的错误 使输入输出语句执行不成功 且执行指定的例外过程除非调用实现者定义的改正永久性错误条件的技术 否则在余下的输入输出操作中该条件一直有效逻辑错误 作为一种不适当的对文卷执行的输入输出操作结果或作为违反用户定义的限制的结果输入输出语句执行不成功实现者定义 由于满足了实现者指定的条件 输入输出语句执行不成功下面列出上述条件的 状态值 这些条件是在对一相对文卷进行输入输出操作之后产生的 如果一个以上的值适用由实现者决定哪一个可用的值放入 状态成功的结束状态 输入输出语句执行成功对有关输入输出操作没有进一步的信息
6、可用状态 语句执行成功但被处理的记录长度与相应文卷的固有文卷属性不一致状态 成功执行了 语句但在执行 时引用的任选文卷没有出现 如果打开方式是 或延伸方式则文卷已被建立不成功结束的末端条件状态 试图执行一个顺序 语句且文卷中不存在下一个逻辑记录 因为已到文卷末尾或在一个不出现的任选输入文卷上第一次试图执行顺序的 语句状态 对一个相对文卷试图执行一个顺序的 语句 而相对记录号中有效数字的位数大于为该文卷描述的相对键数据项的长度不成功结束的无效键条件状态 试图写一个在相对文卷上建立一个重复键的记录状态 此条件的存在是因为试图随机地存取一个文卷中不存在的记录或试图对一个不存在的任选输入文卷执行 或随
7、机 语句状态 试图写到相对文卷定义的界限之外 实现者规定定义界限的方法或者试图对相对文卷执行顺序的 语句且相对记录号中有效数字的位数大于为文卷描述的相对键数据项的长度不成功结束的永久性错误条件状态 存在一个永久性错误并且没有和输入输出操作有关的进一步可用信息状态 存在一个永久性错误因为试图对一个不出现的非任选文卷执行带有或 短语的 语句状态 存在一个永久性错误 因为试图执行一个 语句且那个文卷不支持语句中规定的打开方式 可能的出错情形是规定了 或 短语但文卷不支持写操作规定了 短语 但文卷不支持以 方式打开的相对文卷所允许的输入输出操作规定了 短语但文卷不支持读操作状态 存在一个永久性错误 因
8、为对一个先前用键关闭的文卷试图执行 语句状态 语句执行不成功因为固有文卷属性和在程序中为文卷规定的属性之间相矛盾不成功结束的逻辑错误条件状态 试图对已打开的文卷执行 语句状态 试图对处于非打开状态的文卷执行 语句状态 在顺序存取方式下 在执行 或 语句之前所执行的最后一次输入输出语句不是成功的 语句状态 违反边界 因为试图写或重写比有关文卷名规定的 子句所允许的最大记录要大 或比最小记录要小的记录在 级中试图重写一个记录到相对文卷中且此记录与被代替的记录长度不一致状态 试图对一个以输入方式或 方式打开的文卷执行顺序的 语句且还未建立有效的下一个记录 因为先前的 语句执行不成功或先前的 语句执行
9、不成功但未引起末端条件或先前的 语句引起一个末端条件状态 试图对一个不是以输入或 方式打开的文卷执行一个或 语句状态 试图对一个不是以 输出或扩展方式打开的文卷执行 语句状态 对一个不是以 方式打开的文卷试图执行 或 语句实现者定义的不成功结束条件状态 存在一个实现者定义的条件 这个条件不能与 状态值 到 的任何一个条件重复 的值由实现者定义无效键条件条件可能作为 或 语句的执行结果出现 当无效键条件出现时识别出条件的输入输出语句的执行是不成功的且文卷不受影响 见语句 语句 语句 语句 语句在执行一个输入输出语句规定的输入输出操作之后如果出现无效键条件按下面给出的次序进行处理把值置入有关语句文
10、卷连接区的 状态以指明一个无效键条件见 状态若 短语在产生该条件的语句中指明 则将控制转移到 命令语句 对该文卷指明的任何 过程都不执行 然后根据命令语句规定的每个语句的规则继续执行 如果一个分支过程或引起显式控制转移的条件语句执行时则根据那个语句的规则控制转移否则 直到完成执行 短语中规定的命令语句 控制转移到输入输出语句的结束处且忽略 短语 如果已指明的话如果在输入输出语句中未规定 短语一个 过程必须与文卷连接区相联系 执行那个过程并且根据 语句的规则进行控制转移 如果规定了短语则忽略它 见 语句如果在执行了由输入输出语句规定的输入输出操作之后不存在无效键条件则忽略已规定的短语 与语句有关
11、的文卷连接区的 状态更新且发生下列动作如果存在一个非有效键条件的例外条件在执行任何一个与文卷连接符有关的过程之后 按 语句的规则进行控制转移见 语句如果不存在例外条件控制转移到输入输出语句的结束处或转到在 短语中规定的如果已指明的话 命令语句在后一种情况根据在那个命令语句中规定的每一个语句的规则继续执行 如果执行一个分支过程或执行引起显式控制转移的条件语句 则根据那个语句的规则进行控制转移否则直到完成执行 短语中的命令语句控制才转移到输入输出语句的结束处末端条件末端条件可作为 语句执行的结果 产生该条件的细节见 语句文卷属性冲突条件执行 或 语句可能出现文卷属性冲突条件 当发生文卷属性冲突条件
12、时 识别出此条件的输入输出语句执行是不成功的 文卷不受影响 见 语句语句 语句当识别到文卷属性冲突条件时发生下列次序的动作对与文卷名有关的 状态赋值以指出文卷属性冲突条件见 状态执行与文卷名有关的 过程 如果有相对 模块的环境部输入输出节与输入输出节有关的信息见顺序 模块的段与 段与有关的信息见顺序 模块的文卷控制款功能文卷控制款说明一个相对文卷的有关物理属性一般格式文卷名实现名字值整数数据名数据名数据名语法规则子句必须在文卷控制款中首先指出 接在 子句后的子句可按任意次序出现数据部描述的每一个文卷必须且只能在 段命名一次 在 子句中指出的每个文卷必须在同一程序的数据部中有一个文卷描述款字值
13、必须是一个非数值字值且不能是象征常量 实现名 允许的内容的意义及规则及字值的值由实现者来定义一般规则如果文卷名 引用的文卷连接符是外部文卷连接符见程序间通信模块 子句 则运行单位中引用此文卷连接符的所有文卷控制款必须对 短语有同样说明对 子句中实现名 或字值 有一致的说明 实现者对实现名 或字值 指定一致规则对 子句中的整数 有同样的值同样的组织同样的存取方式在 短语中的数据名 有同样的外部数据项外部媒体上的数据项使用本源字符集短语仅用于以输入 或扩展方式打开的文卷 对目标程序每一次运行并不都要用到的文卷来说该短语是需要的子句指明由文卷名 引用的文卷到由实现名 或字值 引用的存储媒体之间的联系
14、相对 模块的 子句与顺序 模块的 子句是一样的 因此对子句的规定见顺序 模块中的相对 模块的 子句与顺序 模块的 子句是一样的 因此有关 子句有关内容见顺序 模块 相对文卷的 子句数据项的内容见状态子句和 子句在下面列出子句功能子句规定了文卷中记录的存取次序一般格式数据名数据名语法规则数据名 可以受限数据名 必须引用一个其描述不含 符号 的无正负号整数数据项数据名 不能在有关文卷名的记录描述款中定义子句不能指定为 或 语句中的 或短语中指明的文卷名如果相对文卷由一个 语句引用则必须为那个文卷规定 子句内的短语一般规则如果未指明 子句则假定为顺序存取如果存取方式是顺序的则文卷中的记录按照文卷组织
15、指定的顺序存取 对相对文卷 这种顺序是文卷中已存在记录的相对记录号的升序如果存取方式是随机的相对文卷的相对键数据项的值指明了要存取的记录如果存取方式是动态的则文卷中的记录可以顺序和或随机地存取所有在相对文卷中存储的记录由相对记录号唯一地标识 给出一个记录的相对记录号规定了在文卷中记录的逻辑次序位置 第一个逻辑记录有相对记录号 后继的逻辑记录有相对记录号由数据名 规定的数据项用于在用户和海量存储控制系统 之间对相对记录号进行通信与执行输入输出语句有关的相对键数据项是在 子句中由数据名 引用的数据项如果有关的文卷连接符是外部文卷连接符则与文卷连接符有关的运行单位中的每一个文卷控制款必须规定相同的存
16、取方式 另外数据名 必须引用一个外部数据项目在每一种情况下与每个有关的文卷控制款中的 短语必须引用相同的外部数据项子句功能子句规定文卷的逻辑结构是相对组织一般格式一般规则子句指明文卷的逻辑结构是相对组织 文卷组织在文卷创建时建立并且以后不能改变相对组织是一种永久性的逻辑文卷结构其每个记录由一个大于零的整数值唯一地标识这个整数值规定文卷中记录的逻辑次序位置段功能段指出建立重运行的点和不同文卷所共享的存储区域 在标准 的这一版本中视 段中的 子句是过时成分因为在标准 的以后的修改版中要把它删掉一般格式文卷名实现名整数 文卷名整数条件名文卷名文卷名一般规则相对 模块的 子句是顺序 模块的 子句的子集
17、 因此 子句的规定见顺序 模块的 子句相对 模块的 子句同顺序 模块的 子句是一样的 因此 有关 子句的规定见顺序 的 子句相对 模块的数据部文卷节文卷节的有关信息见顺序 模块的 文卷节文卷描述款功能文卷描述款提供关于一个相对文卷的物理结构标识和记录名的信息一般格式文卷名整数 整数整数整数 整数数据名整数 整数实现名 数据名字值数据名语法规则层指示符 标识文卷描述款的开始而且它必须位于文卷名 的前面接在文卷名 之后的各个子句出现的次序是任意的在文卷描述款的后面必须接有一个或多个记录描述款一般规则文卷描述款使文卷名 与一个文卷连接符联系起来相对 模块的 子句与顺序 模块的 子句相同 因此有关 子
18、句见顺序 模块相对 模块的 子句与顺序 模块的 子句相同 因此有关 子句的规定见顺序 模块 在标准 的这一版本中视子句是过时成分 因为在标准 的以后的修改版中要把它删掉相对 模块的 子句与顺序 模块的 子句相同 因此 有关 子句的规定见顺序 模块 在标准 的这一版本中视子句是过时成分 因为在标准 的以后的修改版中要把它删掉相对 模块的 子句与顺序 模块的 子句是相同的 因此有关子句的规定见顺序 模块相对 模块的 子句与顺序 模块的 子句是相同的 因此有关子句的规定见顺序 模块 在标准 的这一版本中视 子句是过时成分 因为在标准 的以后的修改版中要把它删掉相对 模块的过程部一般描述当 源程序中出
19、现相对 模块的 语句时 过程部包含申述过程 以下指出的是当语句出现时过程部的一般格式节名语句段名 句子节名段名句子语句功能语句终止带有任选锁的文卷的处理一般格式文卷名语法规则语句中引用的文卷无须全都具有相同的组织或存取方式一般规则只能对处于打开方式的文卷执行 语句相对文卷属于非顺序的单或多卷或单位的文卷类型 对于这类文卷 每个 语句执行的结果可综述成表表语句格式文卷类型非顺序的单或多一卷或单位下面给出表中符号的定义 这是根据文卷是输入文卷输出文卷还是输入输出文卷 而分别给出相应的定义否则一个定义可适用于输入 输出和输入输出文卷关闭文卷输入文卷和输入输出文卷顺序存取方式若文卷定位于它的末端用指出
20、该文卷有标号记录 则根据实现者的标准标号约定处理标号 当指明标号记录但又未出现或当未指明标号记录而又出现时则 语句的行为是无定义的 系统执行由实现者指定的关闭操作若文卷定位在它的末端 且它指明文卷标号记录 则不进行标号处理而执行由实现者指明的其它关闭操作 若文卷未定位在它的末端 则执行由实现者指明的关闭操作但是不进行结束标号处理输入文卷和输入输出文卷随机或动态存取方式输出文卷 随机 动态或顺序存取方式若指明文卷有标号记录则根据实现者的标准标号约定处理标号 当指明有标号记录但未出现或未指明标号记录但又出现时 语句的行为是无定义的 系统执行由实现者指明的关闭操作 若未指明文卷标号记录则不进行标号处
21、理 但执行由实现者指明的其它关闭操作文卷锁给文卷加锁以保证在运行单位执行期间不能再次打开这个文卷执行 语句引起与文卷名 有关的 状态值的更新见 状态如果不出现任选输入文卷则不进行文卷末端处理且文卷位置指示符也不改变语句成功执行以后 和文卷名 相关联的记录区不再可用 语句执行不成功则使得记录区的可用性未定义跟着执行成功的 语句文卷离开打开方式 且文卷不再与文卷连接符有关如果在一个 语句中指定的文卷名 多于一个 则执行这种 语句的结果就如同对 语句中的每个文卷名 以同样的次序分开写出的一串 语句一样语句功能语句从一个海量存储文卷中逻辑地抹去一个记录一般格式文卷名命令语句命令语句语法规则对于引用顺序
22、存取方式的文卷的 语句 不能指明 短语和短语对于引用非顺序存取方式的且未指明可用 过程的文卷的 语句 则必须指明 短语一般规则在执行该语句时 文卷名 引用的文卷必须是以 方式打开的海量存储文卷 见语句对顺序存取方式的文卷而言在 语句执行之前 对该文卷名 执行的最末一个输入输出语句必须是已经成功执行的 语句 逻辑地从该文卷中删去由 语句存取的记录对随机存取方式或动态存取方式的相对文卷而言 从该文卷中逻辑地删去与文卷名相关联的 数据项的内容所标识的那个记录 若文卷中不含有由该键所指明的记录就产生一个 条件见 无效键条件成功地执行过 语句之后指定的记录已经逻辑地从文卷中删去且不再能被存取语句的执行不
23、影响与文卷名 相关联的记录区的内容 也不影响与文卷名 有关的由在 子句的 短语中规定的数据名引用的数据项的内容当前文卷位置指示符不受 语句执行的影响语句的执行使得与文卷名 相关联的 状态数据项 如果有的话 的值被更新 见状态在成功或不成功执行 操作以后 转移控制根据 语句中任选的和 短语是否出现来决定见 无效键条件短语限定了 语句的作用域见预备知识 语句的作用域语句功能语句初启文卷的处理一般格式文卷名文卷名文卷名文卷名语法规则短语只能用于顺序存取方式的文卷所有在 语句中引用的文卷无须全都具有相同的组织或存取方式一般规则语句的成功执行确定文卷的可用性并使得文卷处于打开方式 成功地执行 语句通过文
24、卷连接符把文卷与文卷名联系起来如果一个文卷物理上存在且由输入输出控制系统识别 则此文卷是可用的表 显示了打开可用与不可用文卷的结果表 一个文卷的可用性文卷可用文卷不可用输入 正常打开打开不成功输入 任选文卷 正常打开 正常打开 第一次读产生末端条件或无效键条件正常打 打开不成功任选文卷 正常打开打开使文卷产生输入 正常打开文卷不含记录 打开使文卷产生正常打开打开不成功任选文卷 正常打 打开使产生文卷语句的成功执行使得相关联的记录区对程序是可用的 如果与文卷名有关的文卷连接符是一个外部文卷连接符 对运行单位只有一个与文卷连接符相关的记录区当一个文卷不处于打开方式时任何显式或隐式地引用该文卷的语句
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- GB 4092.5 1992 程序设计语言 COBOL 相对 模块
