EXPAND 语句
EXPAND 语句将控制部分或指定的公共区域加长指定的字节数。 EXPAND 语句的语法为:
EXPAND sectionname(length[,classname])
[,sectionname(length[,classname])].
- sectionname
- 长度增加的公共区域或控制部分的符号名称。
- 长度
- 要添加到节长度的字节的十进制数。 可扩展部分的长度以达到程序对象或装入模块的最大文本大小。 程序对象的最大文本大小为 1 GB; 装入模块的最大文本大小为 16 MB。 二进制零用于初始化扩展的控制部分。
- className
- 要展开的文本类的名称。 当 COMPAT = LKED 或 COMPAT=PM1时, Classname 无效。 类名缺省为 B_TEXT (如果未指定)。
消息指示添加到控制部分的字节数以及相对于控制部分开始的扩展开始位置的偏移量。 如果在指定的扩展之后必须添加填充字节以对齐下一个控制部分或指定的公共区域,那么扩展的 有效 长度以十六进制表示,并且可以大于 指定的 长度。
放置: EXPAND 语句可以放置在其他控制语句或对象模块之前,之间或之后。 但是,该语句必须跟在包含其引用的控制部分或指定公共区域的模块之后。 如果作为 INCLUDE 语句的结果输入控制部分或指定的公共区域,那么 EXPAND 语句可以出现在 INCLUDE 和 NAME 语句之间的任何位置。
注: 应该谨慎使用 EXPAND ,以免使程序的长度超出其自己的设计限制。 例如,如果将空间添加到超出其基本寄存器可寻址性范围的控制部分,那么除非对程序进行其他更改以允许其处理额外空间,否则该空间不可用。