当前位置:首页 > 工业技术
计算的本质  深入剖析程序和计算机
计算的本质  深入剖析程序和计算机

计算的本质 深入剖析程序和计算机PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:(英)斯图尔特著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2014
  • ISBN:9787115361547
  • 页数:286 页
图书介绍:本书内容包括:对基本的计算机概念进行了介绍,如编程语言中的图灵等效性;程序是如何处理困难或不可能的问题;一种编程语言需要多少性能;电脑如何帮助我们写出正确的程序;如何让一种简单的语言像微积分一样在计算机上运行等等。
《计算的本质 深入剖析程序和计算机》目录

第1章 刚好够用的Ruby基础 1

1.1 交互式Ruby Shell 1

1.2 值 2

1.2.1 基本数据 2

1.2.2 数据结构 3

1.2.3 proc 4

1.3 控制流 4

1.4 对象和方法 5

1.5 类和模块 6

1.6 其他特性 7

1.6.1 局部变量和赋值 7

1.6.2 字符串插值 8

1.6.3 检查对象 8

1.6.4 打印字符串 8

1.6.5 可变参数方法(variadic method) 9

1.6.6 代码块 9

1.6.7 枚举类型 10

1.6.8 结构体 11

1.6.9 给内置对象扩展方法(Monkey Patching) 12

1.6.10 定义常量 13

1.6.11 删除常量 13

第一部分 程序和机器 17

第2章 程序的含义 17

2.1 “含义”的含义 18

2.2 语法 19

2.3 操作语义 19

2.3.1 小步语义 20

2.3.2 大步语义 40

2.4 指称语义 46

2.4.1 表达式 46

2.4.2 语句 49

2.4.3 应用 51

2.5 形式化语义实践 52

2.5.1 形式化 52

2.5.2 找到含义 53

2.5.3 备选方案 53

2.6 实现语法解析器 54

第3章 最简单的计算机 59

3.1 确定性有限自动机 59

3.1.1 状态、规则和输入 60

3.1.2 输出 60

3.1.3 确定性 61

3.1.4 模拟 62

3.2 非确定性有限自动机 65

3.2.1 非确定性 65

3.2.2 自由移动(free move) 71

3.3 正则表达式 74

3.3.1 语法 75

3.3.2 语义 78

3.3.3 解析 86

3.4 等价性 88

第4章 增加计算能力 97

4.1 确定性下推自动机 100

4.1.1 存储 100

4.1.2 规则 101

4.1.3 确定性 103

4.1.4 模拟 103

4.2 非确定性下推自动机 110

4.2.1 模拟 113

4.2.2 不等价 115

4.3 使用下推自动机进行分析 116

4.3.1 词法分析 116

4.3.2 语法分析 118

4.3.3 实践性 122

4.4 有多少能力 123

第5章 终极机器 125

5.1 确定型图灵机 125

5.1.1 存储 126

5.1.2 规则 127

5.1.3 确定性 131

5.1.4 模拟 131

5.2 非确定型图灵机 136

5.3 最大能力 137

5.3.1 内部存储 137

5.3.2 子例程 140

5.3.3 多纸带 141

5.3.4 多维纸带 142

5.4 通用机器 142

5.4.1 编码 144

5.4.2 模拟 145

第二部分 计算与可计算性 149

第6章 从零开始编程 149

6.1 模拟lambda演算 150

6.1.1 使用proc工作 150

6.1.2 问题 152

6.1.3 数字 153

6.1.4 布尔值 156

6.1.5 谓词 160

6.1.6 有序对 161

6.1.7 数值运算 161

6.1.8 列表 168

6.1.9 字符串 172

6.1.10 解决方案 174

6.1.11 高级编程技术 178

6.2 实现lambda演算 184

6.2.1 语法 184

6.2.2 语义 186

6.2.3 语法分析 191

第7章 通用性无处不在 193

7.1 lambda演算 193

7.2 部分递归函数 196

7.3 SKI组合子演算 201

7.4 约塔(Iota) 210

7.5 标签系统 213

7.6 循环标签系统 220

7.7 Conway的生命游戏 229

7.8 rule 110 231

7.9 Wolfram的2,3图灵机 234

第8章 不可能的程序 235

8.1 基本事实 236

8.1.1 能执行算法的通用系统 236

8.1.2 能够替代图灵机的程序 239

8.1.3 代码即数据 239

8.1.4 可以永远循环的通用系统 241

8.1.5 能引用自身的程序 245

8.2 可判定性 250

8.3 停机问题 251

8.3.1 构建停机检查器 251

8.3.2 永远不会有结果 254

8.4 其他不可判定的问题 258

8.5 令人沮丧的暗示 260

8.6 发生上述情况的原因 261

8.7 处理不可计算性 262

第9章 在“玩偶国”中编程 265

9.1 抽象解释 266

9.1.1 路线规划 266

9.1.2 抽象:乘法的符号 267

9.1.3 安全和近似:增加符号 270

9.2 静态语义 274

9.2.1 实现 275

9.2.2 好处和限制 281

9.3 应用 284

后记 285

返回顶部