目录 1
第Ⅰ部分概念 3
第一章 程序设计语言的研究 3
1-1为什么要研究程序设计语言? 3
第十五章 SNOBOL 4
第十四章 LISP1. 5
1-2怎样才算是一个好的语言? 5
1-3关于名词的说明 7
1-4进一步学习的参考资料和建议 8
第二章 程序设计语言的处理程序 9
2-1计算机的结构和运行 9
2-2硬件和固件计算机 12
2-3翻译程序和软件模拟的计算机 13
2-4FORTRAN和SNOBOL4两个语言的编译和模拟 15
2-5虚拟计算机 17
2-6计算机的分级体系 18
2-7汇集和汇集时刻 19
2-8进一步学习的参考资料和建议 22
2-9习题 22
3-2逻辑组织、存贮结构和语法表示 24
3-1程序员定义的数据和系统定义的数据 24
第三节 数据 24
3-3存贮结构:描述符、存贮单元和位串 25
3-4说明 26
3-5数据和运算间的关系 28
3-7初等数据项 29
3-6简单变量 29
3-8容量不变的同类数组 33
3-9容量不变的异类数组、记录和结构 36
3-10容量可变数组 40
3-11集合 45
3-12外部数据文件 47
3-13可解释的数据结构:程序、图象和格式 49
3-14用一种数据结构类型表示另一种数据结构:可扩充的数据结构 50
3-15进一步学习的参考资料和建议 52
第四章 运算 55
4-1运算的一般性质 55
4-2初等运算 57
4-3赋值 59
第十一章 ALGOL 60
4-4数据结构的生成和元素的插入 60
3-16习题 62
4-5数据结构的废弃和元素的删除 62
4-6图象匹配 63
4-7对程序的运算:编译和执行 65
4-8程序员定义的运算:子程序 66
4-9进一步学习的参考资料和建议 67
4-10习题 67
5-2表达式的内部顺序控制 69
5-1隐式和显式顺序控制 69
第五章 顺序控制 69
5-3语句间的顺序控制 77
5-4子程序顺序控制 83
5-5数据结构、运算和顺序控制 95
5-6进一步学习的参考资料和建议 97
5-7习题 98
第六章 数据控制 102
6-1数据控制的基本概念 102
6-2访问环境和作用域规则 105
6-3分程序结构 106
6-4简单的无参数子程序:局部环境 107
6-5简单的无参数子程序:非局部环境 111
6-6基于静态程序结构的非局部环境 114
6-7递归无参数子程序 120
6-8联立程序、中断子程序、任务以及预定子程序中的访问环境 121
6-9带参数的子程序:参数传送技术 122
6-10回送子程序的结果 130
6-11进一步学习的参考资料和建议 131
6-12习题 131
7-1引言 134
第七章 存贮管理 134
7-2运行时需要存贮的主要元素 134
7-3程序员控制的存贮管理及系统控制的存贮管理 135
7-4存贮管理的几个阶段:初始分配、回收、压紧和重新使用 136
7-6基于栈的存贮管理 136
7-5静态存贮管理 136
7-7堆存贮管理:元素尺寸不变 139
7-8堆存贮管理:元素尺寸可变 148
7-9进一步学习的参考资料和建议 152
7-10习题 152
第八章 运算环境 154
8-1数据文件 154
8-2程序文件 154
8-3批量处理环境 155
8-4交互环境 156
8-5进一步学习的参考资料和建议 158
9-1判断语法的一般标准 159
第九章 语法和翻译 159
9-2语言的语法成份 162
9-3翻译步骤 166
9-4语法的形式定义 169
9-5进一步学习的参考资料和建议 174
9-6习题 174
第Ⅱ部分语言 176
第十章 FORTRAN 176
10-1引言 176
10-3带注解的FORTRAN程序举例:计算向量的和 177
10-4数据 178
10-2FORTRAN语言概述 179
10-5运算 180
10-6顺序控制 183
10-7数据控制 185
10-8运算环境 186
10-9语法和翻译 187
10-10FORTRAN虚拟计算机的结构 188
10-11进一步学习的参考资料和建议 188
10-12习题 189
11-1引言 190
11-2ALGOL语言的概述 190
11-3带注解的ALGOL程序举例:计算向量的和 191
11-4数据 193
11-5运算 194
11-6顺序控制 195
11-7数据控制 198
11-8运算环境 199
11-9语法和翻译 199
11-11进一步学习的参考资料和建议 200
11-10ALGOL虚拟计算机的结构 200
11-12习题 201
第十二章 COBOL 202
12-1引言 202
12-2COBOL语言概述 202
12-3带注解的COBOL程序举例:求价目表总额程序 203
12-4数据 207
12-5运算 211
12-6顺序控制 213
12-8运算环境 215
12-7数据控制 215
12-9语法和翻译 215
12-10COBOL虚拟计算机的结构 216
12-11进一步学习的参考资料和建议 217
12-12习题 217
第十三章 PL/I 218
13-1引言 218
13-2PL/I语言概述 219
13-3带注解的PL/I程序举例:向量求和 220
13-4数据 221
13-5运算 224
13-6顺序控制 228
13-7数据控制 231
13-8运算环境 233
13-9语法和翻译 233
13-10PL/I虚拟计算机的结构 235
13-11进一步学习的参考资料和建议 235
13-12习题 235
14-2LISP语言概述 237
14-1引言 237
14-3带注解的LISP程序举例:根据给定的表建立原子表 238
14-4数据 240
14-5运算 243
14-6顺序控制 246
14-7数据控制 247
14-8运算环境 249
14-9语法和翻译 249
14-10LISP虚拟计算机的结构 250
14-11两个特殊的问题 251
14-13习题 252
14-12进一步学习的参考资料和建议 252
15-1引言 254
15-2语言SNOBOL4的概貌 254
15-3带注解的SNOBOL4程序举例:倒排串的元素 255
15-4数据 256
15-5运算 259
15-6顺序控制 265
15-7数据控制 266
15-8运算环境 267
15-9语法和翻译 267
15-10SNOBOL4虚拟计算机的结构 268
15-11进一步学习的参考资料和建议 270
15-12习题 270
第十六章 APL 272
16-1引言 272
16-2APL语言的概述 273
16-3终端交互方式解题实例——计算前N个素数的程序 273
16-4数据 276
16-5运算 276
16-6顺序控制 279
16-7数据控制 281
16-8运算环境 282
16-9语法和翻译 284
16-10APL虚拟机的结构 284
16-11进一步学习的参考资料和建议 286
16-12习题 286
第十七章 图林语言和语言的通用性 287
17-1通用语言 287
17-2图林机和图林语言 288
17-3各种程序设计语言间的差别 291
17-4进一步学习的参考资料和建议 292
17-5习题 292
参考文献 293