引言 1
本语言的目的 1
PL/1的基本特征 2
突出的特征 2
分程序结构 2
数据描述 2
存贮分配 2
数据转换 3
数据组织结构 3
输入/输出 3
多重任务操作 3
编译时设备 4
表处理 4
本手册中的语法记号 4
第一章:程序元素 7
基本语言结构 7
语言字符集 7
60字符集 7
48字符集 8
定义符 8
运算符 8
算术运算符 8
比较运算符 9
位行运算符 9
行运算符 9
圆括号 9
分隔符和别的定义符 9
数据字符集 10
对照序列 10
标识符 10
标识符长度 11
字键 11
语句标识符 11
属性 11
分隔字键 11
内部函数名字 11
随选 12
条件 12
空格的用法 12
注解 12
基本程序结构 13
简单语句 13
复合语句 13
前缀 14
标号前缀 14
条件前缀 14
组 15
分程序 15
END语句的用法 18
程序 19
第二章:数据元素 20
数据的组织结构 20
纯量项 20
常数 20
纯量变量 20
数据集合 20
数组 21
构件 21
构件数组 22
命名 23
简单名字 23
下标名字 24
数组截面 24
定位名字 25
下标定位名字 26
数据类型 27
问题数据 27
算术型数据 27
实算术型常数 28
虚算术型常数 29
算术型变量 30
行型数据 30
字符行型数据 30
位行型数据 30
行型变量 31
程序控制数据 31
标号型数据 31
语句标号型常数 31
语句标号型变量 31
任务型数据 32
事件型数据 32
指示器型数据 32
指示器定位 32
区域型数据 33
第三章:数据制作 34
表达式 34
纯量表达式 34
算术运算 34
混合特征 34
算术运算的结果 35
算术转换 37
位行运算 37
比较运算 38
连接运算 39
类型转换 39
位行型到字符行型 39
字符行型到位行型 39
字符行型到算术型 39
位行型到算术型 40
算术型到字符行型 40
算术型到位行型 40
数组表达式 40
前缀运算符和数组 41
中介运算符和数组 41
纯量——数组运算 41
数组——数组运算 41
包含构件的数组表达式 42
构件表达式 43
表达式的计算 43
表达式计算的次序 44
第四章:数据描述 45
属性 45
说明 45
显式说明 45
DECLARE语句 46
提出属性公共因子 46
多重说明和不唯一的访向 47
上下文联系地说明 48
隐式说明 51
说明的作用域 51
外名字的作用域 51
使用名字的基本规则 54
属性 54
数据属性 54
算术型数据 54
基底 55
标度 55
方式 55
精度 56
算术型数据的缺席条件 57
PICTURE属性 57
行属性 60
LABEL属性 62
TASK属性 62
EVENT属性 63
维属性 64
SECONDARY属性 65
ABNORMAL和NORMAL属性 65
USES和SETS属性 67
入口名字属性 69
ENTRY属性 69
GENERIC属性 70
BUILTIN属性 71
RETURNS属性 72
作用域属性 72
存贮类属性 73
ALIGNED和PACKED属性 75
DEFINED属性 76
定义对应 77
定义复盖 77
求值次序 79
定义的例子 79
INITIAL属性 80
LIKE属性 82
文件描述属性 84
FILE属性 84
文件处理属性 85
功能属性 85
PRINT属性 86
存取属性 86
缓冲属性 86
BACKWARDS属性 87
EXCLUSIVE属性 87
ENVIRONMENT属性 87
KEYED属性 88
表处理属性 88
AREA属性 88
POINTER属性 90
属性赋与标识符 91
缺席属性的应用 92
构件说明和属性 93
层数 93
构件和维属性 93
构件和数据属性 94
构件和作用域属性 94
构件和存贮类属性 94
第五章:过程,函数和子程序 95
形式参数 95
过程访问 95
函数访问和函数过程 96
广函数 96
内部函数 97
子程序访问和子程序过程 97
过程访问中的变元 100
ENTRY属性的用法 100
变元转向入口 101
专用的过程属性RECURSIVE 102
第六章:动态程序结构 103
程序控制 103
分程序的启动和终止 103
动态后代 103
动态包括 103
数据分配和存贮类 103
定义和规则 103
存贮类 105
静态存贮类 105
自动存贮类 105
受控存贮类 105
异步操作和任务 107
同步操作和异步操作 107
两个异步操作的同步 108
任务和事件 108
任务的产生 109
任务的终止 109
任务中数据的分配 110
中断操作 110
条件前缀的目的 110
条件前缀的作用域 111
ON语句的用法 111
系统中断动作 112
REVERT语句的用法 114
程序员定义的ON条件 114
程序检验设备 115
第七章:输入/输出 116
文件开启和文件属性 116
开启文件 117
显式开启 117
隐式开启 117
属性的合并 117
数据流传输 118
表式传输 119
数据式传输 119
编排式传输 119
数据流数据指明部分 119
数据表 119
重复指明部分 120
数据表元素的传输 121
表式数据指明部分 122
表式输入 122
表式输入格式 123
表式输出 124
表式输出域格式 124
数据式数据指明部分 126
数据式传输流中的数据 126
数据式传输数据域长度 129
编排式数据指明部分 130
格式表 131
数据格式项 131
控制格式项 135
空位格式项 135
打印格式项 135
间接格式项 136
数据流传输语句 137
记录传输 138
记录传输语句 139
RECORD传输操作 140
标准文件 142
第八章:语句 143
语句的关系 143
分类 143
赋值语句 143
控制语句 143
数据说明语句 143
错误控制和找错语句 143
输入/输出语句 143
文件准备语句 144
记录状态语句 144
数据指明语句 144
数据传输语句 144
程序结构语句 144
存贮分配语句 144
控制序列 144
伪变量 146
语句字母顺序表 147
ALLOCATE语句 147
赋值语句 151
BEGIN语句 158
CALL语句 159
CLOSE语句 160
DECLARE语句 162
DELAY语句 162
DELETE语句 162
DISPLAY语句 163
DO语句 164
END语句 167
ENTRY语句 168
EXIT语句 169
FORMAT语句 169
FREE语句 170
GET语句 171
GO TO语句 172
IF语句 174
LOCATE语句 175
空语句 176
ON语句 176
OPEN语句 180
PROCEDURE语句 182
PUT语句 183
READ语句 185
RETURN语句 187
REVERT语句 188
REWRITE语句 189
SIGNAL语句 191
STOP语句 192
UNLOCK语句 192
WAIT语句 193
WRITE语句 194
第九章:程序变化 196
宏变量 196
宏DECLARE语句 196
宏表达式 198
可执行宏语句 198
宏赋值语句 198
宏空语句 198
宏GO TO语句 199
宏IF语句 199
宏处理机的动作 199
第十章:专题 201
变元和参数的关系 201
变元下标的计算 201
虚拟变元的用法 201
入口属性的用法 202
参数和变元的对应 203
参数分配 204
参数,界和长度 204
关于界或长度的星号记法 204
表达式作为界或长度 205
序(PROLOGUES) 205
跨任务的数据分配(DATA ALLOCATION ACROSS TASKS) 206
任务名字和事件名字的分配 207
反常性(ABNORMALITY) 207
表处理(LIST PROCESSING) 208
基本概念(BASIC CONCEPTS) 208
附加条件 212
用作基本变量的构件 212
指示器值和基本变量的关系 214
数据链的预防办法 214
附录1:内部函数 216
算术型广函数(ARITHMETIC GENERIC FUNCTIONS) 216
浮点算术型广函数 219
行型广函数(STRING GENERIC FUNCTIONS) 220
处理数组的广函数(GENERIC FUNCTIONS FOR MANIPULATION OF ARRAYS) 222
数组内部函数和构件内部函数 223
条件内部函数 223
表处理内部函数 224
其他内部函数 224
附录2:图象指明部分表 226
数字指示和定义字符子域(DIGIT POINT AND SUBFIELD DELIMITING CHARACTERS) 226
删除另字符(ZERO SUPPRESSION CHARACTERS) 226
漂移编排符号(DRIFTING EDITING SYMBOLS) 227
漂移字符(DRIFTING CHARACTERS) 228
编排字符(EDITING CHARACTER) 228
条件编排字符 228
符号字符(SIGN CHARACTERS) 229
标度因子指明部分 229
英币图象(STERLING PICTURES) 229
关于字符行型图象 230
附录3:ON条件 231
条件的分类(CLASSIFICATION OF CONDITIONS) 231
计算条件 232
输入/输出条件 233
程序检验条件(PROGRAM CHECKOUT CONDITIONS) 235
表处理条件(LIST PROCESSING CONDITIONS) 238
程序员指定的条件 238
系统动作条件 238
附录4:允许的字键缩写 239
附录5:48字符集 240
附录6:有注释的例子 242
索引 248
表1.算术型基底和标度转换 37
表2.“外名字作用域”例1中名字的作用域和用法 53
图1.重复指明部分的一般形式 120
图2.表式输入转换 123
图3.数据式输入和数据式输出的例子 130
图4.DO语句的一般形式 164