本书多年来一直深受世界各国高校师生的欢迎,是美国哈佛大学、麻省理工学院、普林斯顿大学、加州大学伯克利分校等许多著名大学的首选教材,对我国的高校教学也产生了广泛影响。
本 书以历史眼光,从发展的角度、当前的水平以及现阶段的研究方向等几个方面,全景式描绘了计算机科学各个子学科的主要领域。在内容编排上,本书很好地兼顾了 学科广度和主题深度,把握了最新的技术趋势。本书用算法、数据抽象等核心思想贯穿各个主题,并且充分展现了历史背景、发展历程和新的技术趋势,培养读者的 大局观,为其今后深入学习其他计算机专业课程打下坚实的基础。
本书深入浅出、图文并茂,内容引人入胜,极易引发读者的兴趣,绝无一般教材的枯燥和晦涩。此外,本书的教学手段多样、习题丰富,并且每章后都附有与本章内容相关的社会现实问题供读者思考和讨论,这些都很好地体现了作者强调培养学生分析问题能力的教学理念。
第11版新增了手持移动设备,特别是智能手机的相关内容,主要涉及第3章(操作系统)、第4章(组网)、第6章(编程语言)和第7章(软件工程)中。此外,书中还对软件所有权和责任、训练人工神经网络等许多相关内容做了更新,以反映最新技术面貌。
第0 章 绪论 1
0.1 算法的作用 1
0.2 计算机器的由来 3
0.3 算法的科学 7
0.4 抽象8
0.5 学习大纲8
0.6 社会影响 9
社会问题11
课外阅读12
第1 章 数据存储13
1.1 位和位存储13
1.1.1 布尔运算 13
1.1.2 门和触发器 14
1.1.3 十六进制记数法 17
1.2 主存储器18
1.2.1 存储器结构 18
1.2.2 存储器容量的度量 19
1.3 海量存储器20
1.3.1 磁学系统 20
1.3.2 光学系统 22
1.3.3 闪存驱动器 23
1.3.4 文件存储及检索 24
1.4 用位模式表示信息 25
1.4.1 文本的表示 25
1.4.2 数值的表示 26
1.4.3 图像的表示 27
1.4.4 声音的表示 28
*1.5 二进制系统29
1.5.1 二进制记数法29
1.5.2 二进制加法 31
1.5.3 二进制中的小数 32
*1.6 整数存储33
1.6.1 二进制补码记数法 33
1.6.2 余码记数法 36
*1.7 小数的存储 37
1.7.1 浮点记数法 37
1.7.2 截断误差 39
*1.8 数据压缩 41
1.8.1 通用的数据压缩技术 41
1.8.2 图像压缩 43
1.8.3 音频和视频压缩 44
*1.9 通信差错 45
1.9.1 奇偶校验位 45
1.9.2 纠错编码 46
复习题47
社会问题50
课外阅读51
第2 章 数据操控52
2.1 计算机体系结构 52
2.1.1 CPU基础知识52
2.1.2 存储程序概念53
2.2 机器语言 54
2.2.1 指令系统 54
2.2.2 一种演示用的机器语言 56
2.3 程序执行 58
2.3.1 程序执行的一个例子60
2.3.2 程序与数据 62
*2.4 算术/逻辑指令 63
2.4.1 逻辑运算 63
2.4.2 循环移位及移位运算 65
2.4.3 算术运算 66
*2.5 与其他设备通信 67
2.5.1 控制器的作用67
2.5.2 直接内存存取68
2.5.3 握手 69
2.5.4 流行的通信媒介 69
2.5.5 通信速率 70
*2.6 其他体系结构70
2.6.1 流水线 70
2.6.2 多处理器计算机 71
复习题72
社会问题 77
课外阅读77
第3 章 操作系统79
3.1 操作系统的历史79
3.2 操作系统的体系结构82
3.2.1 软件概述82
3.2.2 操作系统组件84
3.2.3 系统启动86
3.3 协调机器的活动88
3.3.1 进程的概念88
3.3.2 进程管理88
*3.4 处理进程间的竞争90
3.4.1 信号量90
3.4.2 死锁91
3.5 安全性93
3.5.1 来自机器外部的攻击93
3.5.2 来自机器内部的攻击94
复习题95
社会问题98
课外阅读98
第4 章 组网及因特网99
4.1 网络基础99
4.1.1 网络分类99
4.1.2 协议100
4.1.3 网络互连102
4.1.4 进程间通信的方法104
4.1.5 分布式系统 105
4.2 因特网106
4.2.1 因特网体系结构106
4.2.2 因特网编址108
4.2.3 因特网应用109
4.3 万维网113
4.3.1 万维网实现113
4.3.2 HTML114
4.3.3 XML 117
4.3.4 客户端和服务器端的活动118
*4.4 因特网协议119
4.4.1 因特网软件的分层方法119
4.4.2 TCP/IP协议簇122
4.5 安全性123
4.5.1 入侵的形式124
4.5.2 防护和对策125
4.5.3 加密126
4.5.4 网络安全的法律途径128
复习题130
社会问题131
课外阅读132
第5 章 算法134
5.1 算法的概念134
5.1.1 概览134
5.1.2 算法的正式定义135
5.1.3 算法的抽象本质136
5.2 算法的表示136
5.2.1 原语137
5.2.2 伪代码139
5.3 算法的发现142
5.3.1 问题求解的艺术142
5.3.2 入门144
5.4 迭代结构146
5.4.1 顺序搜索法147
5.4.2 循环控制148
5.4.3 插入排序算法151
5.5 递归结构154
5.5.1 二分搜索算法154
5.5.2 递归控制159
5.6 有效性和正确性160
5.6.1 算法有效性160
5.6.2 软件验证163
复习题167
社会问题171
课外阅读171
第6 章 程序设计语言172
6.1 历史回顾172
6.1.1 早期程序设计语言172
6.1.2 独立并超越机器174
6.1.3 程序设计范型175
6.2 传统的程序设计概念179
6.2.1 变量和数据类型180
6.2.2 数据结构181
6.2.3 常量和字面量182
6.2.4 赋值语句183
6.2.5 控制语句184
6.2.6 注释187
6.3 过程单元188
6.3.1 过程188
6.3.2 参数189
6.3.3 函数192
6.4 语言实现193
6.4.1 翻译过程193
6.4.2 软件开发包198
6.5 面向对象程序设计199
6.5.1 类和对象199
6.5.2 构造器 202
6.5.3 附加特性 202
*6.6 程序设计中的并发活动 204
*6.7 说明性程序设计 206
6.7.1 逻辑推演 206
6.7.2 Prolog 208
复习题210
社会问题213
课外阅读214
第7 章 软件工程 215
7.1 软件工程学科 215
7.2 软件生命周期 217
7.2.1 周期是个整体217
7.2.2 传统的开发阶段218
7.3 软件工程方法 220
7.4 模块化221
7.4.1 模块式实现222
7.4.2 耦合 224
7.4.3 内聚 225
7.4.4 信息隐藏225
7.4.5 构件226
7.5 行业工具 227
7.5.1 较老的工具 227
7.5.2 统一建模语言 228
7.5.3 设计模式232
7.6 质量保证 233
7.6.1 质量保证的范围233
7.6.2 软件测试 234
7.7 文档编制 235
7.8 人机界面 236
7.9 软件所有权和责任238
复习题240
社会问题242
课外阅读243
第8 章 数据抽象244
8.1 数据结构基础 244
8.1.1 数组 244
8.1.2 列表、栈和队列245
8.1.3 树 245
8.2 相关概念 247
8.2.1 抽象247
8.2.2 静态结构与动态结构 247
8.2.3 指针 248
8.3 数据结构的实现 248
8.3.1 数组的存储248
8.3.2 列表的存储251
8.3.3 栈和队列的存储254
8.3.4 二叉树的存储255
8.3.5 数据结构的操作257
8.4 一个简短案例 259
8.5 定制的数据类型 263
8.5.1 用户自定义数据类型 263
8.5.2 抽象数据类型 264
*8.6 类和对象 266
*8.7 机器语言中的指针267
复习题269
社会问题273
课外阅读274
第9 章 数据库系统275
9.1 数据库基础275
9.1.1 数据库系统的重要性275
9.1.2 模式的作用276
9.1.3 数据库管理系统277
9.1.4 数据库模型278
9.2 关系模型 279
9.2.1 关系设计中的问题 279
9.2.2 关系运算282
9.2.3 SQL 285
*9.3 面向对象数据库287
*9.4 维护数据库的完整性289
9.4.1 提交/回滚协议289
9.4.2 锁定 290
*9.5 传统的文件结构291
9.5.1 顺序文件291
9.5.2 索引文件294
9.5.3 散列文件294
9.6 数据挖掘 297
9.7 数据库技术的社会影响299
复习题300
社会问题303
课外阅读304
第10 章 计算机图形学305
10.1 计算机图形学的范围 305
10.2 3D图形概述307
10.3 建模 308
10.3.1 单个物体的建模308
10.3.2 整个场景的建模313
10.4 渲染314
10.4.1 光-表面交互314
10.4.2 裁剪、扫描转换和隐藏面的消除316
10.4.3 着色319
10.4.4 渲染-流水线硬件320
*10.5 处理全局照明321
10.5.1 光线跟踪 321
10.5.2 辐射度323
10.6 动画323
10.6.1 动画基础323
10.6.2 运动学和动力学325
10.6.3 动画制作过程326
复习题326
社会问题328
课外阅读329
第11 章 人工智能330
11.1 智能与机器330
11.1.1 智能体330
11.1.2 研究方法332
11.1.3 图灵测试332
11.2 感知333
11.2.1 理解图像333
11.2.2 语言处理335
11.3 推理338
11.3.1 产生式系统338
11.3.2 搜索树340
11.3.3 启发式搜索342
11.4 其他研究领域346
11.4.1 知识的表达和处理346
11.4.2 学习347
11.4.3 遗传算法349
11.5 人工神经网络349
11.5.1 基本特性350
11.5.2 训练人工神经网络351
11.5.3 联想记忆353
11.6 机器人学356
11.7 后果的思考358
复习题359
社会问题363
课外阅读364
第12 章 计算理论365
12.1 函数及其计算365
12.2 图灵机367
12.2.1 图灵机的原理367
12.2.2 丘奇-图灵论题369
12.3 通用程序设计语言370
12.3.1 Bare Bones语言370
12.3.2 用Bare Bones语言编程372
12.3.3 Bare Bones的通用性373
12.4 一个不可计算的函数375
12.4.1 停机问题375
12.4.2 停机问题的不可解性376
12.5 问题的复杂性379
12.5.1 问题复杂性的度量379
12.5.2 多项式问题与非多项式问题382
12.5.3 NP问题383
*12.6 公钥密码学386
12.6.1 模表示法386
12.6.2 RSA公钥加密系统387
复习题389
社会问题392
课外阅读392
附录A ASCII 码394
附录B 处理二进制补码表示的电路395
附录C 一种简单的机器语言397
附录D 高级编程语言399
附录E 迭代结构与递归结构的等价性401
索引403
问题与练习答案(图灵社区网站下载)
《会吃的孩子更健康》内容简介:食商,即饮食商数,类似于我们常说的智商、情商、艺商等概念。如今,人们对于饮食的追求不再仅仅是
《超越财富:家族企业的传承与革新》内容简介:无论是欧洲的罗斯柴尔德家族,还是美国的洛克菲勒家族,或者东亚的很多财团,家族企
《数据结构与算法JavaScript描述》内容简介:通过本书的学习,读者将能自如地选择最合适的数据结构与算法,并在JavaScript开发中懂
在《风格问题》这一著作里,作者形成了大胆的观念:他声称,从古埃及王国直至伊斯兰世界(因而也是直至现在),装饰艺术历史上存
《大道PHP:LAMP+Zend+开源框架整合开发与实战》以PHP应用程序开发为主题,对实践中必不可少的各项重要技术进行了全面介绍与系统
《孤独的泡面》内容简介:100碗各国人气泡面,200条全球饮食文化解说,近150个深夜的陪伴,现在集结成书。从中国到日本,从韩国及至
《社会主义核心价值观·关键词:诚信》内容简介:在一般意义上,“诚”即诚实诚恳,主要指主体真诚的内在道德品质;“信”即信用信
AppropriateforcoursestitledComputerNetworkingorIntroductiontoNetworkingatboththe...
《快速写实:炭笔素描教程·唯美头像》内容简介:炭笔素描以上色速度快、不易反光、笔色浓黑、黑白灰层次易拉开、画面效果强烈且具
内容简介:今天的Android应用开发者经常要想尽办法来提升程序性能。由于应用越来越复杂,这个问题也变得越来越棘手。本书主要介绍
《深入搜索引擎:海量信息的压缩、索引和查询》是斯坦福大学信息检索和挖掘课程的首选教材之一,并已成为全球主要大学信息检索的主
《Effective Debugging》内容简介:本书共分8章。首先讲解调试策略(第1章)、调试方法(第2章)以及调试时所用的工具与技巧(第3章
《区块链核心算法解析》内容简介:《区块链核心算法解析》介绍了构建容错的分布式系统所需的基础技术,以及一系列允许容错的协议和
《金元文选》内容简介:金代、元代散文存在宗唐、宗宋以及超越唐宋、直追秦汉的艺术追求,虽然成就不如唐宋散文,也出现了姚燧、元
《互联网心理学》成书于2001年,一经出版就在心理学界引起广泛关注。这是一部从心理学角度介绍互联网的科普著作,它为人们理解互
本书系统地介绍了计算机视觉方面的基础知识,详细讨论了从图像自动抽取重要信息的相关理论,内容包括最近出现的研究成果。本书取
《他山之石》内容简介:鲁迅是享誉世界的小说家,但他的经典之作并非无源之水、无本之木。鲁迅明确说过自己“所仰仗的全在先前看过
设计与艺术关系密切,艺术史家往往是设计史家,本书是一个明证。以艺术史家著称的贡布里希对设计的思考与论述同样既引人入胜,又
《打造你的话语权》内容简介:采取不同寻常的沟通方式,说出富有力量而又不失风度的话语,就能高效解决生活中火星四射的交流困境,
《你不知道的JavaScript(上卷)》内容简介:JavaScript语言有很多复杂的概念,但却用简单的方式体现出来(比如回调函数),因此,