计算机科学概论(第12版) PDF格式高清电子书免费下载

计算机科学概论(第12版)

作者 【美】J. 格伦•布鲁克希尔(J. Glenn Brookshear) 丹尼斯•布里罗(Dennis Brylow)
译者 刘艺 吴英 毛倩倩
出版社 人民邮电出版社
出版日期 2018
页数 436
格式 Paper book / ebook (PDF)
ISBN 9787115444271
评分
价格 69
  • 内容简介
  • 图书目录
  • 免费下载

出版信息

ISBN:9787115444271
语言:简体中文
包装/印刷类型:1
开本:16开
出版时间:2017-01-01 00:00:00
页数:436

内容简介

本书是计算机科学概论课程的经典教材,全书对计算机科学做了百科全书式的精彩阐述,充分展现了计算机科学的历史背景、发展历程和新的技术趋势。本书先后介绍信息编码及计算机体系结构的基本原理,操作系统和组网及因特网,算法、程序设计语言及软件工程,数据抽象和数据库,图形学,人工智能,计算理论等内容。第12版将Python程序设计语言方面的介绍纳入了重点章节。

《计算机科学概论》是计算机科学概论课程的经典教材,全书对计算机科学做了百科全书式的精彩阐述,充分展现了计算机科学的历史背景、发展历程和新的技术趋势。《计算机科学概论》首先介绍的是信息编码及计算机体系结构的基本原理,进而讲述操作系统和组网及因特网,接着探讨算法、程序设计语言及软件工程,然后讨论数据抽象和数据库方面的问题,讲述图形学的一些主要应用以及人工智能,以计算理论的介绍结束全书。《计算机科学概论》在内容编排上由具体到抽象逐步推进,很适合教学安排,每一个主题自然而然地引导出下一个主题。此外,书中还包含大量的图、表和示例,有助于读者对知识的了解与把握。

第 12版主要是将Python程序设计语言方面的介绍纳入了重点章节,除了增加与Python相关的内容,几乎每一章都能看到对前一版对应章节的修订、更新以及修正。

图书目录

绪0论 绪论 1

0.1 算法的作用 1

0.2 计算机器的由来 3

0.3 学习大纲 6

0.4 计算机科学的首要主题 7

0.4.1 算法 8

0.4.2 抽象 9

0.4.3 创新 9

0.4.4 数据 10

0.4.5 程序设计 10

0.4.6 因特网 10

0.4.7 影响 11

社会问题 11

课外阅读 13

第 1章 数据存储 14

1.1 位和位存储 14

1.1.1 布尔运算 14

1.1.2 门和触发器 15

1.1.3 十六进制记数法 18

1.2 主存储器 19

1.2.1 存储器结构 19

1.2.2 存储器容量的度量 20

1.3 海量存储器 21

1.3.1 磁系统 21

1.3.2 光系统 22

1.3.3 闪存驱动器 23

1.4 用位模式表示信息 24

1.4.1 文本的表示 24

1.4.2 数值的表示 26

1.4.3 图像的表示 27

1.4.4 声音的表示 27

*1.5 二进制系统 29

1.5.1 二进制记数法 29

1.5.2 二进制加法 30

1.5.3 二进制中的小数 31

*1.6 整数的存储 32

1.6.1 二进制补码记数法 33

1.6.2 余码记数法 35

*1.7 小数的存储 37

1.7.1 浮点记数法 37

1.7.2 截断误差 38

*1.8 数据与程序设计 40

1.8.1 Python入门 41

1.8.2 你好,Python 41

1.8.3 变量 42

1.8.4 运算符和表达式 43

1.8.5 货币转换 44

1.8.6 调试 44

*1.9 数据压缩 45

1.9.1 通用的数据压缩技术 45

1.9.2 图像压缩 47

1.9.3 音频和视频压缩 48

*1.10 通信差错 49

1.10.1 奇偶校验位 49

1.10.2 纠错码 50

复习题 52

社会问题 55

课外阅读 56

第 2章 数据操控 57

2.1 计算机体系结构 57

2.1.1 CPU基础知识 57

2.1.2 存储程序概念 58

2.2 机器语言 59

2.2.1 指令系统 60

2.2.2 一种演示用的机器语言 61

2.3 程序执行 64

2.3.1 程序执行的一个例子 65

2.3.2 程序与数据 67

*2.4 算术/逻辑指令 69

2.4.1 逻辑运算 69

2.4.2 循环移位运算及移位运算 70

2.4.3 算术运算 71

*2.5 与其他设备通信 72

2.5.1 控制器的作用 72

2.5.2 直接存储器存取 74

2.5.3 握手 74

2.5.4 流行的通信媒介 74

2.5.5 通信速率 75

*2.6 数据操控编程 76

2.6.1 逻辑运算和移位运算 76

2.6.2 控制结构 77

2.6.3 输入和输出 79

2.6.4 马拉松训练助手 80

*2.7 其他体系结构 82

2.7.1 流水线 82

2.7.2 多处理器机器 83

复习题 84

社会问题 89

课外阅读 90

第3章 操作系统 91

3.1 操作系统的历史 91

3.2 操作系统的体系结构 94

3.2.1 软件概述 94

3.2.2 操作系统组件 96

3.2.3 系统启动 98

3.3 协调机器的活动 100

3.3.1 进程的概念 100

3.3.2 进程管理 100

*3.4 处理进程间的竞争 102

3.4.1 信号量 102

3.4.2 死锁 103

3.5 安全性 105

3.5.1 来自外部的攻击 106

3.5.2 来自内部的攻击 106

复习题 108

社会问题 110

课外阅读 110

第4章 组网及因特网 112

4.1 网络基础 112

4.1.1 网络分类 112

4.1.2 协议 113

4.1.3 组合网络 115

4.1.4 进程间通信的方法 117

4.1.5 分布式系统 118

4.2 因特网 118

4.2.1 因特网体系结构 119

4.2.2 因特网编址 120

4.2.3 因特网应用 122

4.3 万维网 126

4.3.1 万维网实现 126

4.3.2 HTML 127

4.3.3 XML 129

4.3.4 客户端和服务器端的活动 130

*4.4 因特网协议 132

4.4.1 因特网软件的分层方法 132

4.4.2 TCP/IP协议簇 134

4.5 安全性 136

4.5.1 入侵的形式 136

4.5.2 防护和对策 137

4.5.3 加密 138

4.5.4 网络安全的法律途径 140

复习题 142

社会问题 143

课外阅读 144

第5章 算法 146

5.1 算法的概念 146

5.1.1 非正式的回顾 146

5.1.2 算法的正式定义 147

5.1.3 算法的抽象本质 148

5.2 算法的表示 148

5.2.1 原语 149

5.2.2 伪代码 151

5.3 算法的发现 154

5.3.1 问题求解的艺术 155

5.3.2 迈出第 一步 156

5.4 迭代结构 159

5.4.1 顺序搜索算法 159

5.4.2 循环控制 160

5.4.3 插入排序算法 164

5.5 递归结构 167

5.5.1 二分搜索算法 167

5.5.2 递归控制 171

5.6 效率和正确性 174

5.6.1 算法效率 174

5.6.2 软件验证 177

复习题 180

社会问题 185

课外阅读 185

第6章 程序设计语言 186

6.1 历史回顾 186

6.1.1 早期程序设计语言 186

6.1.2 机器无关和超越机器无关 188

6.1.3 程序设计范型 189

6.2 传统的程序设计概念 192

6.2.1 变量和数据类型 193

6.2.2 数据结构 195

6.2.3 常量和字面量 196

6.2.4 赋值语句 197

6.2.5 控制语句 198

6.2.6 注释 201

6.3 过程单元 202

6.3.1 函数 202

6.3.2 参数 203

6.3.3 有返回值的函数 205

6.4 语言实现 207

6.4.1 翻译过程 207

6.4.2 软件开发包 212

6.5 面向对象程序设计 213

6.5.1 类和对象 213

6.5.2 构造器 216

6.5.3 附加特性 217

*6.6 程序设计并发活动 218

*6.7 说明性程序设计 220

6.7.1 逻辑推演 220

6.7.2 Prolog 222

复习题 224

社会问题 227

课外阅读 228

第7章 软件工程 229

7.1 软件工程学科 229

7.2 软件生命周期 231

7.2.1 周期是个整体 231

7.2.2 传统的开发阶段 232

7.3 软件工程方法学 234

7.4 模块化 236

7.4.1 模块式实现 236

7.4.2 耦合 238

7.4.3 内聚 239

7.4.4 信息隐藏 239

7.4.5 构件 240

7.5 行业工具 241

7.5.1 较老的工具 241

7.5.2 统一建模语言 242

7.5.3 设计模式 246

7.6 质量保证 247

7.6.1 质量保证的范围 247

7.6.2 软件测试 248

7.7 文档 249

7.8 人机界面 250

7.9 软件所有权和责任 252

复习题 254

社会问题 256

课外阅读 257

第8章 数据抽象 258

8.1 基本数据结构 258

8.1.1 数组和聚合 258

8.1.2 列表、栈和队列 259

8.1.3 树 260

8.2 相关概念 261

8.2.1 抽象 261

8.2.2 静态结构与动态结构 261

8.2.3 指针 262

8.3 数据结构的实现 263

8.3.1 存储数组 263

8.3.2 存储聚合 265

8.3.3 存储列表 266

8.3.4 存储栈和队列 268

8.3.5 存储二叉树 270

8.3.6 操控数据结构 272

8.4 一个简短的案例 273

8.5 定制的数据类型 277

8.5.1 用户定义的数据类型 277

8.5.2 抽象数据类型 278

8.6 类和对象 280

*8.7 机器语言中的指针 282

复习题 284

社会问题 287

课外阅读 288

第9章 数据库系统 290

9.1 数据库基础 290

9.1.1 数据库系统的重要性 290

9.1.2 模式的作用 291

9.1.3 数据库管理系统 292

9.1.4 数据库模型 293

9.2 关系模型 294

9.2.1 关系设计中的问题 294

9.2.2 关系运算 297

9.2.3 SQL 300

*9.3 面向对象数据库 302

*9.4 维护数据库的完整性 304

9.4.1 提交/回滚协议 304

9.4.2 锁定 305

*9.5 传统的文件结构 307

9.5.1 顺序文件 307

9.5.2 索引文件 309

9.5.3 散列文件 310

9.6 数据挖掘 313

9.7 数据库技术的社会影响 314

复习题 316

社会问题 319

课外阅读 320

第 10章 计算机图形学 321

10.1 计算机图形学的范围 321

10.2 3D图形概述 322

10.3 建模 324

10.3.1 单个物体的建模 324

10.3.2 整个场景的建模 327

10.4 渲染 329

10.4.1 光-表面交互 329

10.4.2 裁剪、扫描转换和隐藏面的

消除 331

10.4.3 着色 333

10.4.4 渲染-流水线硬件 334

*10.5 处理全局照明 335

10.5.1 光线跟踪 336

10.5.2 辐射度 337

10.6 动画 338

10.6.1 动画基础 338

10.6.2 动力学和运动学 339

10.6.3 动画制作过程 340

复习题 341

社会问题 342

课外阅读 343

第 11章 人工智能 344

11.1 智能与机器 344

11.1.1 智能体 344

11.1.2 研究方法 346

11.1.3 图灵测试 346

11.2 感知 347

11.2.1 理解图像 347

11.2.2 语言处理 349

11.3 推理 352

11.3.1 产生式系统 352

11.3.2 搜索树 354

11.3.3 启发式法 356

11.4 其他研究领域 360

11.4.1 知识的表达和处理 360

11.4.2 学习 361

11.4.3 遗传算法 362

11.5 人工神经网络 363

11.5.1 基本特性 363

11.5.2 训练人工神经网络 365

11.5.3 联想记忆 367

11.6 机器人学 369

11.7 后果的思考 371

复习题 372

社会问题 376

课外阅读 377

第 12章 计算理论 378

12.1 函数及其计算 378

12.2 图灵机 380

12.2.1 图灵机的原理 380

12.2.2 丘奇-图灵论题 382

12.3 通用程序设计语言 383

12.3.1 Bare Bones语言 383

12.3.2 用Bare Bones语言编程 385

12.3.3 Bare Bones的通用性 385

12.4 一个不可计算的函数 387

12.4.1 停机问题 387

12.4.2 停机问题的不可解性 388

12.5 问题的复杂性 391

12.5.1 问题复杂性的度量 391

12.5.2 多项式问题与非多项式问题 394

12.5.3 NP问题 395

*12.6 公钥密码学 397

12.6.1 模表示法 398

12.6.2 RSA公钥密码学 399

复习题 400

社会问题 403

课外阅读 404

附录A ASCII码 405

附录B 用于处理二进制补码表示的电路 406

附录C 一种简单的机器语言 408

附录D 程序设计语言 410

附录E 迭代结构与递归结构的等价性 412

索引 414

内容提要

目 录

绪0论 绪论 1

0.1 算法的作用 1

0.2 计算机器的由来 3

0.3 学习大纲 6

0.4 计算机科学的首要主题 7

0.4.1 算法 8

0.4.2 抽象 9

0.4.3 创新 9

0.4.4 数据 10

0.4.5 程序设计 10

0.4.6 因特网 10

0.4.7 影响 11

社会问题 11

课外阅读 13

第 1章 数据存储 14

1.1 位和位存储 14

1.1.1 布尔运算 14

1.1.2 门和触发器 15

1.1.3 十六进制记数法 18

1.2 主存储器 19

1.2.1 存储器结构 19

1.2.2 存储器容量的度量 20

1.3 海量存储器 21

1.3.1 磁系统 21

1.3.2 光系统 22

1.3.3 闪存驱动器 23

1.4 用位模式表示信息 24

1.4.1 文本的表示 24

1.4.2 数值的表示 26

1.4.3 图像的表示 27

1.4.4 声音的表示 27

*1.5 二进制系统 29

1.5.1 二进制记数法 29

1.5.2 二进制加法 30

1.5.3 二进制中的小数 31

*1.6 整数的存储 32

1.6.1 二进制补码记数法 33

1.6.2 余码记数法 35

*1.7 小数的存储 37

1.7.1 浮点记数法 37

1.7.2 截断误差 38

*1.8 数据与程序设计 40

1.8.1 Python入门 41

1.8.2 你好,Python 41

1.8.3 变量 42

1.8.4 运算符和表达式 43

1.8.5 货币转换 44

1.8.6 调试 44

*1.9 数据压缩 45

1.9.1 通用的数据压缩技术 45

1.9.2 图像压缩 47

1.9.3 音频和视频压缩 48

*1.10 通信差错 49

1.10.1 奇偶校验位 49

1.10.2 纠错码 50

复习题 52

社会问题 55

课外阅读 56

第 2章 数据操控 57

2.1 计算机体系结构 57

2.1.1 CPU基础知识 57

2.1.2 存储程序概念 58

2.2 机器语言 59

2.2.1 指令系统 60

2.2.2 一种演示用的机器语言 61

2.3 程序执行 64

2.3.1 程序执行的一个例子 65

2.3.2 程序与数据 67

*2.4 算术/逻辑指令 69

2.4.1 逻辑运算 69

2.4.2 循环移位运算及移位运算 70

2.4.3 算术运算 71

*2.5 与其他设备通信 72

2.5.1 控制器的作用 72

2.5.2 直接存储器存取 74

2.5.3 握手 74

2.5.4 流行的通信媒介 74

2.5.5 通信速率 75

*2.6 数据操控编程 76

2.6.1 逻辑运算和移位运算 76

2.6.2 控制结构 77

2.6.3 输入和输出 79

2.6.4 马拉松训练助手 80

*2.7 其他体系结构 82

2.7.1 流水线 82

2.7.2 多处理器机器 83

复习题 84

社会问题 89

课外阅读 90

第3章 操作系统 91

3.1 操作系统的历史 91

3.2 操作系统的体系结构 94

3.2.1 软件概述 94

3.2.2 操作系统组件 96

3.2.3 系统启动 98

3.3 协调机器的活动 100

3.3.1 进程的概念 100

3.3.2 进程管理 100

*3.4 处理进程间的竞争 102

3.4.1 信号量 102

3.4.2 死锁 103

3.5 安全性 105

3.5.1 来自外部的攻击 106

3.5.2 来自内部的攻击 106

复习题 108

社会问题 110

课外阅读 110

第4章 组网及因特网 112

4.1 网络基础 112

4.1.1 网络分类 112

4.1.2 协议 113

4.1.3 组合网络 115

4.1.4 进程间通信的方法 117

4.1.5 分布式系统 118

4.2 因特网 118

4.2.1 因特网体系结构 119

4.2.2 因特网编址 120

4.2.3 因特网应用 122

4.3 万维网 126

4.3.1 万维网实现 126

4.3.2 HTML 127

4.3.3 XML 129

4.3.4 客户端和服务器端的活动 130

*4.4 因特网协议 132

4.4.1 因特网软件的分层方法 132

4.4.2 TCP/IP协议簇 134

4.5 安全性 136

4.5.1 入侵的形式 136

4.5.2 防护和对策 137

4.5.3 加密 138

4.5.4 网络安全的法律途径 140

复习题 142

社会问题 143

课外阅读 144

第5章 算法 146

5.1 算法的概念 146

5.1.1 非正式的回顾 146

5.1.2 算法的正式定义 147

5.1.3 算法的抽象本质 148

5.2 算法的表示 148

5.2.1 原语 149

5.2.2 伪代码 151

5.3 算法的发现 154

5.3.1 问题求解的艺术 155

5.3.2 迈出第 一步 156

5.4 迭代结构 159

5.4.1 顺序搜索算法 159

5.4.2 循环控制 160

5.4.3 插入排序算法 164

5.5 递归结构 167

5.5.1 二分搜索算法 167

5.5.2 递归控制 171

5.6 效率和正确性 174

5.6.1 算法效率 174

5.6.2 软件验证 177

复习题 180

社会问题 185

课外阅读 185

第6章 程序设计语言 186

6.1 历史回顾 186

6.1.1 早期程序设计语言 186

6.1.2 机器无关和超越机器无关 188

6.1.3 程序设计范型 189

6.2 传统的程序设计概念 192

6.2.1 变量和数据类型 193

6.2.2 数据结构 195

6.2.3 常量和字面量 196

6.2.4 赋值语句 197

6.2.5 控制语句 198

6.2.6 注释 201

6.3 过程单元 202

6.3.1 函数 202

6.3.2 参数 203

6.3.3 有返回值的函数 205

6.4 语言实现 207

6.4.1 翻译过程 207

6.4.2 软件开发包 212

6.5 面向对象程序设计 213

6.5.1 类和对象 213

6.5.2 构造器 216

6.5.3 附加特性 217

*6.6 程序设计并发活动 218

*6.7 说明性程序设计 220

6.7.1 逻辑推演 220

6.7.2 Prolog 222

复习题 224

社会问题 227

课外阅读 228

第7章 软件工程 229

7.1 软件工程学科 229

7.2 软件生命周期 231

7.2.1 周期是个整体 231

7.2.2 传统的开发阶段 232

7.3 软件工程方法学 234

7.4 模块化 236

7.4.1 模块式实现 236

7.4.2 耦合 238

7.4.3 内聚 239

7.4.4 信息隐藏 239

7.4.5 构件 240

7.5 行业工具 241

7.5.1 较老的工具 241

7.5.2 统一建模语言 242

7.5.3 设计模式 246

7.6 质量保证 247

7.6.1 质量保证的范围 247

7.6.2 软件测试 248

7.7 文档 249

7.8 人机界面 250

7.9 软件所有权和责任 252

复习题 254

社会问题 256

课外阅读 257

第8章 数据抽象 258

8.1 基本数据结构 258

8.1.1 数组和聚合 258

8.1.2 列表、栈和队列 259

8.1.3 树 260

8.2 相关概念 261

8.2.1 抽象 261

8.2.2 静态结构与动态结构 261

8.2.3 指针 262

8.3 数据结构的实现 263

8.3.1 存储数组 263

8.3.2 存储聚合 265

8.3.3 存储列表 266

8.3.4 存储栈和队列 268

8.3.5 存储二叉树 270

8.3.6 操控数据结构 272

8.4 一个简短的案例 273

8.5 定制的数据类型 277

8.5.1 用户定义的数据类型 277

8.5.2 抽象数据类型 278

8.6 类和对象 280

*8.7 机器语言中的指针 282

复习题 284

社会问题 287

课外阅读 288

第9章 数据库系统 290

9.1 数据库基础 290

9.1.1 数据库系统的重要性 290

9.1.2 模式的作用 291

9.1.3 数据库管理系统 292

9.1.4 数据库模型 293

9.2 关系模型 294

9.2.1 关系设计中的问题 294

9.2.2 关系运算 297

9.2.3 SQL 300

*9.3 面向对象数据库 302

*9.4 维护数据库的完整性 304

9.4.1 提交/回滚协议 304

9.4.2 锁定 305

*9.5 传统的文件结构 307

9.5.1 顺序文件 307

9.5.2 索引文件 309

9.5.3 散列文件 310

9.6 数据挖掘 313

9.7 数据库技术的社会影响 314

复习题 316

社会问题 319

课外阅读 320

第 10章 计算机图形学 321

10.1 计算机图形学的范围 321

10.2 3D图形概述 322

10.3 建模 324

10.3.1 单个物体的建模 324

10.3.2 整个场景的建模 327

10.4 渲染 329

10.4.1 光-表面交互 329

10.4.2 裁剪、扫描转换和隐藏面的

消除 331

10.4.3 着色 333

10.4.4 渲染-流水线硬件 334

*10.5 处理全局照明 335

10.5.1 光线跟踪 336

10.5.2 辐射度 337

10.6 动画 338

10.6.1 动画基础 338

10.6.2 动力学和运动学 339

10.6.3 动画制作过程 340

复习题 341

社会问题 342

课外阅读 343

第 11章 人工智能 344

11.1 智能与机器 344

11.1.1 智能体 344

11.1.2 研究方法 346

11.1.3 图灵测试 346

11.2 感知 347

11.2.1 理解图像 347

11.2.2 语言处理 349

11.3 推理 352

11.3.1 产生式系统 352

11.3.2 搜索树 354

11.3.3 启发式法 356

11.4 其他研究领域 360

11.4.1 知识的表达和处理 360

11.4.2 学习 361

11.4.3 遗传算法 362

11.5 人工神经网络 363

11.5.1 基本特性 363

11.5.2 训练人工神经网络 365

11.5.3 联想记忆 367

11.6 机器人学 369

11.7 后果的思考 371

复习题 372

社会问题 376

课外阅读 377

第 12章 计算理论 378

12.1 函数及其计算 378

12.2 图灵机 380

12.2.1 图灵机的原理 380

12.2.2 丘奇-图灵论题 382

12.3 通用程序设计语言 383

12.3.1 Bare Bones语言 383

12.3.2 用Bare Bones语言编程 385

12.3.3 Bare Bones的通用性 385

12.4 一个不可计算的函数 387

12.4.1 停机问题 387

12.4.2 停机问题的不可解性 388

12.5 问题的复杂性 391

12.5.1 问题复杂性的度量 391

12.5.2 多项式问题与非多项式问题 394

12.5.3 NP问题 395

*12.6 公钥密码学 397

12.6.1 模表示法 398

12.6.2 RSA公钥密码学 399

复习题 400

社会问题 403

课外阅读 404

附录A ASCII码 405

附录B 用于处理二进制补码表示的电路 406

附录C 一种简单的机器语言 408

附录D 程序设计语言 410

附录E 迭代结构与递归结构的等价性 412

索引 414

点击展开

点击收起

计算机科学概论(第12版) PDF格式高清电子书免费下载

提醒:本站所有图书资源均索引自互联网,版权争议与本站无关。如有侵权或其他争议的可能性,请发起版权投诉,因本站未参与任何制作、转制、存储等任一环节,故无法对涉及到的资源进行删除,本站会依据DMCA原则, 对涉及的资源链接进行删除。因为所有图书资源均不属于本站,本站只提供索引服务,故本站不保证任何资源的准确性,权威性,请使用者自行判断。

  • 查看原页面 报告错误 复制提取码下载 提取码:nwh9
  • 查看原页面 报告错误 复制提取码下载 提取码:zpp7

看了 计算机科学概论(第12版) 的用户也看了: