《计算机科学的基本结构》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:(美)伍尔夫(Wulf,W.A.)等著;郑茂松等译
  • 出 版 社:北京:科学出版社
  • 出版年份:1987
  • ISBN:15031·774
  • 页数:584 页
图书介绍:

第一部分 基本控制结构 2

第一章 有限状态模型 2

1.1 有限状态机 2

目录 11

前言 11

1.2 非确定的FSM 11

1.3 语言和正规表达式 16

1.4 正规表达式与FSM的等价性 20

1.5 计算模型“能力”的描述 25

1.6 文献概述 27

第二章 其它控制模型:框图和程序 39

2.1 框图 39

2.2 简单程序设计语言的控制结构 44

2.3 框图与程序的等价性 46

2.4 文献概述 48

第三章 其它控制结构 54

3.1 选择结构 55

3.2 重复结构 57

3.3 程式 59

3.5 文献概述 67

3.4 小结:等价性、能力和方便性 67

第四章 控制的表示 73

4.1 FCL/2结构的表示 74

4.2 其它控制结构的表示 76

4.3 程式的表示 78

4.4 文献概述 80

第五章 程序的形式描述与证明 88

5.1 程序的功能描述 89

5.2 程序证明 92

5.3 计算wp:语言的语义 93

5.4 正确性论证的脆弱性 116

5.5 确认:测试与验证 118

5.6 文献概述 119

第六章 计算效率的测定 130

6.1 两个简单例子 131

6.2 阶算法 135

6.3 效率信息的收集和应用 138

6.4 性能的实验测定 139

6.5 性能的分析测定 143

6.6 文献概述 157

7.1 引言 163

第七章 数据的数学模型 163

第二部分 基本数据结构 163

7.2 存贮器、变量、名字和值 164

7.3 类型 169

7.4 类型的描述 171

7.5 文献概述 177

第八章 程序设计语言中的数据 184

8.1 纯量类型 184

8.2 名字和引用 187

8.3 构造类型 193

8.4 程序设计语言中出现的与数据有关的其它问题 198

8.5 文献概述 205

第九章 抽象构造类型 214

9.1 线性结构 214

9.2 非线性结构 225

9.3 文献概述 233

第十章 数据的表示 242

10.1 数据的表示技术 243

10.2 栈的表示 253

10.3 双排队与排队的表示 254

10.4 树与图的表示 260

10.5 集合的表示 264

10.6 多维数组的表示 269

10.7 文献概述 276

第十一章 数据表示的正确性 291

11.1 一个例子:栈类型的证明 292

11.2 一般方法 298

11.3 间接引用赋值的最弱前置条件 300

11.4 文献概述 302

第十二章 空间要求 305

12.1 静态空间要求 305

12.2 动态空间要求 309

12.3 设计判定和表示权衡 311

12.4 文献概述 312

第三部分 控制与数据的相互作用 316

第十三章 计算模型和文法 316

13.1 下推自动机 317

13.2 图灵机 324

13.3 元语言和产生式 330

13.4 文献概述 341

第十四章 递归及其有关问题 350

14.1 动态数据类型 350

14.2 递归 351

14.3 递归的能力 354

14.4 分而治之 357

14.5 动态类型上的递归操作:遍历树 359

14.6 文献概述 366

第十五章 标识符的解释 371

15.1 标识符的作用域(续) 371

15.2 存贮作用期(续) 374

15.3 标识符与值的结合 377

15.4 文献概述 381

16.1 具有静态存贮管理的语言 388

第十六章 高级语言的运行时表示 388

16.2 “基于栈的”语言 390

16.3 外层寻址和层次显示表 391

16.4 数组的存贮分配 396

16.5 分程序结构 396

16.6 过程参数 397

16.7 参数机构 398

16.8 堆式存贮分配 400

16.9 文献概述 401

17.1 递归程序的证明 406

第十七章 有关递归的推理 406

17.2 结构归纳法 407

17.3 文献概述 409

第十八章 递归算法的分析 411

18.1 递归程序代价函数的例子 411

18.2 几个熟悉的数学递归关系 412

18.3 代价函数例子的解答 413

18.4 解答分而治之递归的一般规则 414

18.5 文献概述 415

19.1 背景 419

第十九 章在程序设计中使用FSM:一个例子 419

第四部分 实例研究 419

19.2 问题的提出 420

19.3 基于FSM的解答 422

19.4 用于解答的抽象程序 428

19.5 用于解答的具体程序 432

19.6 词法分析程序的正确性 441

19.7 词法分析程序的性能 447

第二十章 集合的快速实现:一个例子 455

20.1 背景 455

20.2 问题的提出 456

20.3 使用表与树的一种实现 458

20.4 SetofElts类型的使用 462

20.5 用于解答的程序 463

20.6 SetofElts类型的正确性 475

20.7 SetofElts类型的性能 479

20.8 表示的选择 483

第二十一章 生成程序:编写在集合上操作的循环 492

21.1 对集合元素操作的循环 492

21.2 用穿线树实现的一种解答 494

21.3 用于解答的程序 496

21.4 集合操作的再实现 498

第二十二章 公式处理:定义数据类型的一个练习 502

22.1 一些定义 502

22.2 Expression抽象类型 505

22.3 原问题的解答 507

22.4 表达式数据类型的实现 512

22.5 性能问题及其解答 513

22.6 小结 518

第二十三章 产生式系统和简化 522

23.1 产生式系统 523

23.2 用模式和替换式扩充Expression类型 528

23.3 简化程式 534

23.4 小结 536

参考文献 539

附录A 术语与记号 543

A.1 标准的数学与逻辑记号 543

A.2 离散数学中的标准定义 544

A.3 本书中引入的记号 545

附录B 评价程序的标准 548

B.1 引言 548

B.2 程序是由人读的 549

B.3 如何编写好程序? 549

附录C 本书所用的程序设计语言 555

附录D 一台简单的计算机 557

D.1 存贮器 558

D.2 输入输出设备 559

D.3 中央处理机 559

D.4 指令集 560

附录E 第四部分程序的汇集 562

E.1 词法分析程序 562

E.2 SetofElts类型与SetGen类型 566

E.3 求导程序与简化程序 571

汉英名词索引 578