GB T 4092.9-1992 程序设计语言COBOL 程序分段模块.pdf
《GB T 4092.9-1992 程序设计语言COBOL 程序分段模块.pdf》由会员分享,可在线阅读,更多相关《GB T 4092.9-1992 程序设计语言COBOL 程序分段模块.pdf(100页珍藏版)》请在麦多课文档分享上搜索。
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.9 1992 程序设计语言 COBOL 程序 分段 模块
