目录前言第一章 导论 1
§1.1 Ada的历史 1
§1.2 Ada的特点 4
§1.3 Ada的前途 8
§1.4 Ada程序的结构 9
§1.5 Ada程序设计举例 11
第二章 词法元素 19
§2.1 字符集 19
§2.2 标识符与定界符 20
§2.3 数值字值 24
§2.4 字符字值 26
§2.5 字符串 27
§2.6 注解 28
§2.7 杂注 28
习题 29
第三章 离散数据类型 30
§3.1 Ada类型系统的基本原则及分类§3.2 枚举类型 38
§3.3 布尔类型 41
§3.4 字符类型 42
§3.5 整数类型 44
§3.6 表达式 54
§3.7 类型转换 54
习题 57
第四章 语句 60
§4.1 语句序列 60
§4.2 空语句 62
§4.3 赋值语句 63
§4.4 转移语句 64
§4.5 条件语句 66
§4.6 情况语句 69
§4.7 循环语句 72
§4.8 程序设计举例 79
习题 85
第五章 说明与程序块 87
§5.1 块结构 87
§5.2 说明 88
§5.3 对象说明 90
§5.4 数据说明 92
§5.5 说明语句 93
§5.6 举例:测试一个数是否为质数 97
习题 98
第六章 子程序 100
§6.1 子程序体 101
§6.2 参量 104
§6.3 子程序调用 107
§6.4 隐含参量值 109
§6.5 子程序规范说明 111
§6.6 重载与限定表达式 113
§6.7 算符 114
§6.8 举例:珀斯卡三角形 117
习题 120
第七章 程序包 122
§7.1 程序包规范说明 122
§7.2 程序包体 126
§7.3 使用子句 130
§7.4 私有类型 131
§7.5 派生类型与程序包 137
§7.6 举例:编译程序的错误报告程序包 139
习题 141
§8.1 数组类型 143
第八章 复合数据类型 143
§8.2 数组聚集 148
§8.3 使用数组 149
§8.4 串 154
§8.5 数组属性 154
§8.6 数组类型转换 155
§8.7 记录类型 156
§8.8 记录聚集 158
§8.9 使用记录 159
§8.10 隐含初值 162
§8.11 举例:网络管理程序包 164
习题 174
第九章 再谈程序结构 175
§9.1 编译单位 175
§9.2 上下文规范说明 177
§9.3 子单位 182
§9.4 编译的顺序 186
§9.5 名字的作用域与可见性 187
§9.6 访问隐含名字的实体 191
§9.7 重载和名字的唯一性 193
习题 194
§10.1 可变记录 197
第十章 判别类型 197
§10.2 变长数组 202
§10.3 判别式约束 203
§10.4 使用判别类型 206
§10.5 判别私有类型 211
§10.6 举例:正文处理程序包 213
习题 223
第十一章 存取类型 225
§11.1 数据对象的静态分配与动态分配 225
§11.2 存取类型的基本概念 227
§11.3 存取类型的说明与名字 235
§11.4 分配算符 238
§11.5 存取常量 239
§11.6 判别与非约束数组的基类型 240
§11.7 存贮分配与回收的控制 241
§11.8 举例:用于源程序正文的相互对照引用生成程序 250
习题 262
第十二章 任务 264
§12.1 并发的概念 264
§12.2 任务说明 270
§12.3 任务通信与汇合 276
§12.4 入口语句和接收语句 282
§12.5 不确定性与选择语句 290
§12.6 延迟、超时和终止 299
§12.7 条件入口调用和定时入口调用 311
§12.8 入口族 313
§12.9 任务类型 317
§12.10 任务优先权 322
§12.11 任务属性 323
§12.12 终止出错任务 324
§12.13 举例:一个顺序通信接口 326
习题 339
第十三章 例外处理 342
§13.1 运行错误 342
§13.2 用例外表示错误 343
§13.3 引发和处理例外 345
§13.4 寻找用于引发例外的处理程序 349
§13.5 错误处理技术 354
§13.6 任务中的例外 360
§13.7 举例:网络管理程序包 361
习题 363
§14.1 程序单元的参量化方法 364
第十四章 类属程序单元 364
§14.2 类属说明 369
§14.3 类属例化 370
§14.4 类属参数 372
§14.5 举例:一个用于任务通信的类属缓冲区 385
习题 391
第十五章 输入/输出 392
§15.1 Ada的输入/输出 392
§15.2 文件 393
§15.3 文件的说明、打开和关闭 395
§15.4 顺序文件操作 399
§15.5 随机存取文件操作 405
§15.6 正文文件 408
§15.7 隐含文件 411
§15.8 正文输出 412
§15.9 正文输入 422
§15.10 串输入/输出 427
§15.11 举例:相互对照生成程序 428
习题 440
第十六章 实数类型 442
§16.1 定点表示与浮点表示 443
§16.2 浮点类型 446
§16.3 定点类型 452
§16.4 实型计算的语义 457
§16.5 举例:数字滤波器的定点实现 459
习题 462
第十七章 低级程序设计 464
§17.1 表示规范说明 465
§17.2 输入/输出程序设计 465
§17.3 长度规范说明 474
§17.5 举例:行接口程序包 477
§17.4 与机器有关的常量 477
附录附录1 预定义语言属性 482
附录2 预定义语言杂注 487
附录3 预定义语言环境 490
附录4 标准输入/输出程序包 495
附录5 预定义库单元 505
附录6 语法图索引 525
附录7 术语汇编 528
附录8 习题选解 534
英汉名词对照 555
主要参考文献 565