《计算机科学概论》由两位知名的计算机科学教育家编写,全面而细致地介绍了计算机科学的各个方面。书中,计算系统的每个分层都以剖析,从住处层开始,历经硬件层、程序设计层、操作系统层、应用程序层的通信层,最后讨论了计算的限制。此外,正文中穿插了大量的人物传记、历史注释、道德问题和最新的技术发展信息,有助于你进一步了解计算机科学。每章后面都附带有大量的练习,可以帮助你即时重温并掌握这一章所述的内容。
《计算机科学概论》是计算和计算机科学引论课程的理想教材,对于想要了解计算机科学概况的非专业人员,《计算机科学概论》也是一个很好的选择。
译者序
前言
第一部分 基 础 篇
第1章 全景图 1
1.1 计算系统 1
1.1.1 计算系统的分层 2
1.1.2 抽象 3
1.2 计算的历史 5
1.2.1 计算硬件的简史 5
1.2.2 计算软件的简史 11
1.2.3 预言 15
1.3 计算工具和计算学科 15
小结 16
道德问题:数字化分裂 17
练习 17
思考题 18
第二部分 信 息 层
第2章 二进制数值和记数系统 21
2.1 数字和计算 21
2.2 位置记数法 22
2.2.1 二进制、八进制和十六进制 25
2.2.2 其他记数系统中的运算 26
2.2.3 以2的幂为基数的记数系统 26
2.2.4 把十进制数转换成其他数制的数 28
2.2.5 二进制数值和计算机 29
小结 30
道德问题:计算机和国家安全 30
练习 31
思考题 32
第3章 数据表示法 34
3.1 数据和计算机 34
3.1.1 模拟数据和数字数据 35
3.1.2 二进制表示法 36
3.2 数字数据的表示法 38
3.2.1 负数表示法 38
3.2.2 实数表示法 40
3.3 文本表示法 42
3.3.1 ASCII字符集 43
3.3.2 Unicode字符集 44
3.3.3 文本压缩 44
3.4 音频信息表示法 47
3.4.1 音频格式 49
3.4.2 MP3音频格式 49
3.5 图像和图形的表示法 49
3.5.1 颜色表示法 49
3.5.2 数字化图像和图形 50
3.5.3 图形的矢量表示法 52
3.6 视频表示法 53
小结 53
道德问题:MGM Studios公司和Grokster有限公司 54
练习 55
思考题 57
第三部分 硬 件 层
第4章 门和电路 59
4.1 计算机和电学 59
4.2 门 61
4.2.1 非门 61
4.2.2 与门 62
4.2.3 或门 62
4.2.4 异或门 63
4.2.5 与非门和或非门 63
4.2.6 门处理回顾 64
4.2.7 具有更多输入的门 64
4.3 门的构造 65
4.4 电路 66
4.4.1 组合电路 67
4.4.2 加法器 69
4.4.3 多路复用器 71
4.5 存储器电路 71
4.6 集成电路 72
4.7 CPU芯片 73
小结 73
道德问题:电子邮件隐私权 73
练习 74
思考题 76
第5章 计算部件 77
5.1 独立的计算机部件 77
5.2 存储程序的概念 79
5.2.1 冯·诺伊曼体系结构 80
5.2.2 读取-执行周期 84
5.2.3 RAM和ROM 85
5.2.4 二级存储设备 86
5.2.5 触摸屏 89
5.3 非冯·诺伊曼体系结构 90
小结 91
道德问题:生物信息学研究和deCODEGenetics公司的案例 92
练习 93
思考题 94
第四部分 程序设计层
第6章 问题求解和算法设计 95
6.1 问题求解 95
6.1.1 如何解决问题 96
6.1.2 应用Polya的问题求解策略 99
6.2 算法 99
6.2.1 计算机问题求解 99
6.2.2 执行算法 101
6.2.3 开发算法 102
6.3 伪代码 102
6.3.1 执行一个伪代码算法 103
6.3.2 伪代码的功能 104
6.3.3 伪代码示例 106
6.4 自顶向下设计方法 108
6.4.1 一个通用的实例 109
6.4.2 一个计算机实例 111
6.4.3 方法总结 113
6.4.4 测试算法 114
6.5 面向对象方法 114
6.5.1 面向对象 114
6.5.2 设计方法 115
6.5.3 一个通用的实例 117
6.5.4 一个计算机实例 118
6.6 几个重要思想 120
6.6.1 信息隐蔽 120
6.6.2 抽象 121
6.6.3 事物命名 122
6.6.4 程序设计语言 122
6.6.5 测试 123
小结 123
道德问题:计算机专业人员许可 124
练习 124
思考题 126
第7章 低级程序设计语言 127
7.1 计算机操作 127
7.2 抽象的分层 128
7.3 机器语言 128
7.4 一个程序实例 133
7.4.1 问题和算法 133
7.4.2 程序 134
7.5 汇编语言 137
7.5.1 Pep/7汇编语言 138
7.5.2 伪代码操作 138
7.5.3 “Hello”程序的汇编语言版本 139
7.5.4 一个新程序 140
7.5.5 具有分支的程序 142
7.5.6 具有循环的程序 144
7.6 其他重要思想 145
7.6.1 抽象 145
7.6.2 测试 146
7.6.3 测试计划实现 146
小结 147
道德问题:软件盗版和版权 148
练习 148
思考题 150
第8章 高级程序设计语言 151
8.1 翻译过程 151
8.1.1 编译器 151
8.1.2 解释器 152
8.2 程序设计语言的范型 154
8.3 命令式语言的功能性 155
8.3.1 布尔表达式 155
8.3.2 强类型化 156
8.3.3 输入/输出结构 159
8.3.4 控制结构 160
8.3.5 复合数据类型 172
8.4 面向对象语言的功能性 175
8.4.1 封装 175
8.4.2 继承 176
8.4.3 多态性 176
小结 177
道德问题:开源软件的发展 178
练习 179
思考题 180
第9章 抽象数据类型和算法 181
9.1 抽象数据类型 181
9.2 实现 182
9.2.1 基于数组的实现 182
9.2.2 链式实现 183
9.3 列表 185
9.3.1 列表的基本操作 185
9.3.2 其他列表操作 188
9.4 排序 188
9.4.1 选择排序 189
9.4.2 冒泡排序 190
9.4.3 快速排序 191
9.5 二分检索法 195
9.6 栈和队列 196
9.6.1 栈 197
9.6.2 队列 198
9.6.3 实现 198
9.7 树 199
9.7.1 二叉树 199
9.7.2 二叉检索树 200
9.7.3 其他操作 203
9.7.4 图 204
9.8 程序设计库 204
小结 205
道德问题:使用计算机的恶作剧和欺诈
行为 205
练习 206
思考题 208
第五部分 操作系统层
第10章 操作系统 209
10.1 操作系统的角色 209
10.1.1 内存、进程和CPU管理 211
10.1.2 批处理 211
10.1.3 分时操作 212
10.1.4 其他OS要素 213
10.2 内存管理 213
10.2.1 单块内存管理 214
10.2.2 分区内存管理 215
10.2.3 页式内存管理 216
10.3 进程管理 218
10.3.1 进程状态 218
10.3.2 进程控制块 219
10.4 CPU调度 219
10.4.1 先到先服务 220
10.4.2 最短作业优先 220
10.4.3 循环调度法 221
小结 222
道德问题:数字版权管理和关于Sony公司的根目录案件的争论 223
练习 223
思考题 226
第11章 文件系统和目录 227
11.1 文件系统 227
11.1.1 文本文件和二进制文件 228
11.1.2 文件类型 228
11.1.3 文件操作 229
11.1.4 文件访问 230
11.1.5 文件保护 231
11.2 目录 232
11.2.1 目录树 232
11.2.2 路径名 234
11.3 磁盘调度 236
11.3.1 先到先服务磁盘调度法 237
11.3.2 最短寻道时间优先磁盘调度法 237
11.3.3 SCAN磁盘调度法 238
小结 238
道德问题:垃圾邮件 239
练习 240
思考题 241
第六部分 应用程序层
第12章 信息系统 243
12.1 信息管理 243
12.2 电子制表软件 244
12.2.1 电子数据表公式 246
12.2.2 循环引用 249
12.2.3 电子数据表分析 249
12.3 数据库管理系统 250
12.3.1 关系模型 251
12.3.2 关系 253
12.3.3 结构化查询语言 254
12.3.4 数据库设计 255
12.4 信息安全 256
12.4.1 机密性、完整性和可用性 256
12.4.2 密码学 257
小结 259
道德问题:加密 260
练习 261
思考题 262
第13章 人工智能 263
13.1 思维机 263
13.1.1 图灵测试 264
13.1.2 AI问题的各个方面 265
13.2 知识表示 265
13.2.1 语义网 266
13.2.2 检索树 268
13.3 专家系统 270
13.4 神经网络 272
13.4.1 生物神经网络 272
13.4.2 人工神经网络 273
13.5 自然语言处理 274
13.5.1 语音合成 275
13.5.2 语音识别 276
13.5.3 自然语言理解 276
13.6 机器人学 277
13.6.1 感知-规划-执行范型 277
13.6.2 包孕体系结构 280
13.6.3 物理部件 281
小结 281
道德问题:HIPAA(健康保险携带和责任法案) 282
练习 283
思考题 284
第14章 模拟、图形学和其他应用
程序 285
14.1 什么是模拟 285
14.1.1 复杂系统 286
14.1.2 模型 286
14.1.3 构造模型 286
14.1.4 排队系统 287
14.1.5 气象模型 290
14.1.6 其他模型 293
14.1.7 必要的计算能力 293
14.2 计算机图形学 294
14.2.1 光的工作原理 295
14.2.2 物体形状 296
14.2.3 光模拟 296
14.2.4 复杂对象的建模 297
14.2.5 让物体动起来 302
14.3 嵌入式系统 303
14.4 电子商务 303
14.5 计算机安全 304
14.5.1 恶意代码 305
14.5.2 安全攻击 305
小结 307
道德问题:入侵大学的计算机系统,查询
录取程序中某人的录取状态 307
练习 308
思考题 309
第七部分 通 信 层
第15章 网络 311
15.1 连网 311
15.1.1 网络的类型 312
15.1.2 Internet连接 314
15.1.3 包交换 316
15.2 开放式系统和协议 317
15.2.1 开放式系统 317
15.2.2 网络协议 318
15.2.3 TCP/IP 318
15.2.4 高层协议 319
15.2.5 MIME类型 320
15.2.6 防火墙 320
15.3 网络地址 321
小结 323
道德问题:无所不在的计算 324
练习 325
思考题 326
第16章 万维网 327
16.1 Web简介 327
16.1.1 搜索引擎 329
16.1.2 即时消息 329
16.1.3 博客 329
16.1.4 cookie 330
16.2 HTML 330
16.2.1 基本的HTML格式 333
16.2.2 图像和链接 333
16.3 交互式Web页 335
16.3.1 Java小程序 335
16.3.2 Java服务器页 336
16.4 XML 337
小结 339
道德问题:写博客 340
练习 341
思考题 342
第八部分 总 结
第17章 计算的限制 345
17.1 硬件 345
17.1.1 算术运算的限制 345
17.1.2 部件的限制 350
17.1.3 通信的限制 350
17.2 软件 351
17.2.1 软件的复杂度 352
17.2.2 当前提高软件质量的方法 352
17.2.3 臭名昭著的软件错误 355
17.3 问题 357
17.3.1 算法比较 357
17.3.2 图灵机 362
17.3.3 停机问题 364
17.3.4 算法分类 365
小结 367
道德问题:深度链接 367
练习 368
思考题 369
参考文献 370
《2024年MBA、MPA、MPAcc、MEM管理类联考综合能力逻辑历年真题分类精解》内容简介:本书针对逻辑题型,深入分析探究,用“举题型讲
Designingabrochureorwebsitewithoutanartbackground?Stepawayfromthecomputerandread...
The"Web2.0"phenomenahasbecomemorepervasivethaneverbefore.Itisimpactingtheveryfab...
这不是一本常规意义上Python的入门书。这本书中没有Python关键字和for循环的使用,也没有细致入微的标准库介绍,而是完全从实战的
《基于Selenium WebDriver和Cucumber》内容简介:从目前主流的Web自动化测试工具入手,由浅入深、全面、细致地阐述了如何使用开源测
CAD室内设计施工图常用图块.5 金牌家装实例 本书特色 本图集汇集了住宅室内装饰设计施工图各类实例,是从大量的工程实例中精选出来,经过加工整理,使其典型化,综...
《愿你成为最好的女子(经典版)》内容简介:不可爱的缺点;既能看到美好的一面,也充满自省、努力成为更好的女子的启示。女人,要
《AWS Lambda实战》内容简介:本书以实例为驱动,教会读者如何使用事件驱动的方法来开发后端应用程序。从AWSLambda的基础介绍开始,
《工作一年拉开差距:逻辑思考》内容简介:刚工作一年,总是感觉思路混乱? 刚接手新的业务压力很大,对新项目的思考总觉得不够深入
《典型半导体团簇及组装材料的结构和电子特性》内容简介:典型半导体团簇及其团簇组装材料的结构及其电子性质的研究是当前团簇科学
本书集Web2.0的发展及特点、Web2.0界面设计模式基本理论、实际模式实践及代码实现等诸多内容于一身,具有很强的实用性。这些内容
《当代中国马克思主义研究(2016)》内容简介:本书收录了2016年当代中国马克思主义论坛的专家发言和优秀征文共29篇。全书主要探讨
视频中的异常事件检测 本书特色 《视频中的异常事件检测》针对智能视频分析中的异常事件检测及其在视频安全认证领域的关键问题展开深入研究,旨在提高智能视频分析系统的...
TakeYourDigitalContentintoRealTimewithQuartzComposer!ApplesQuartzComposermakesit...
《VoIP技术构架(第2版)》解释了今天的一个基本的电话架构的建立和工作、有关语音和数据组网的主要概念、在数据网上传输语音和与电
《一本书玩转信息图制作》内容简介:本书是一本全面揭秘信息图制作的大全,从两条线帮助读者精通信息图制作:一条是横向案例线,通
《邓石如篆书千字文》内容简介:篆书一直以中锋用笔为正宗,形成了铁线篆、玉箸篆这样略显工艺化的成熟书体。早年邓石如临习“二李
《全能鼓手实战教程——648句技巧训练》内容简介:本书是一本鼓手必备的练习宝典。涵盖了爵士鼓、小军鼓等各类鼓乐学习过程中初级、
《团队拓展训练游戏》内容简介:本书通过游戏形式详细说明了如何通过团队合作取得成功。在当今充满挑战的时代,团队建设能力是管理
《数据主权与安全:跨境电子取证》内容简介:网络时代的到来导致以领土范围为标准的管辖界限逐渐模糊,近年来各国在刑事侦查中收集