书籍详情
普林斯顿计算机公开课(原书第2版)
作者:[美]布莱恩·W. 柯尼汉(Brian W. Kernighan)
出版社:机械工业出版社
出版时间:2023-04-01
ISBN:9787111725121
定价:¥79.00
购买这本书可以去
内容简介
从1999年开始,作者在普林斯顿大学开设了一门名为“我们世界中的计算机”的课程(COS 109:Computers in Our World),这门课向非计算机专业的学生介绍计算机的基本常识,多年来大受学生追捧。本书就是基于这门课程的讲义编写而成的,书中不仅解释了计算机和通信系统的工作原理,还分析了新技术带来的隐私和安全问题。第2版的新增章节讨论了Python编程、人工智能、机器学习以及大数据等内容。本书适合所有希望了解数字世界的读者阅读,通过了解技术的工作原理、起源和未来发展趋势,更好地理解并改变我们身处的世界。
作者简介
暂缺《普林斯顿计算机公开课(原书第2版)》作者简介
目录
中文版序
译者序
前言
引言 …… 1
部分 硬件
第1章 什么是计算机 …… 16
1.1 逻辑结构 …… 20
1.1.1 处理器 …… 21
1.1.2 主存储器 …… 22
1.1.3 二级存储器 …… 24
1.1.4 其他 …… 27
1.2 物理结构 …… 28
1.3 摩尔定律 …… 33
1.4 小结 …… 35
第2章 比特、字节和信息的表示 …… 38
2.1 模拟和数字 …… 39
2.2 模数转换 …… 41
2.2.1 图像的数字化 …… 41
2.2.2 声音的数字化 …… 43
2.2.3 电影的数字化 …… 47
2.2.4 文本的数字化 …… 48
2.3 比特、字节和二进制 …… 49
2.3.1 比特 …… 50
2.3.2 2的幂和10的幂 …… 52
2.3.3 二进制数值 …… 52
2.3.4 字节 …… 55
2.4 小结 …… 58
第3章 深入了解处理器 …… 60
3.1 玩具计算机 …… 61
3.1.1 个玩具程序 …… 62
3.1.2 第二个玩具程序 …… 64
3.1.3 分支指令 …… 66
3.1.4 内存中的表示 …… 70
3.2 真实的处理器 …… 71
3.3 缓存 …… 75
3.4 其他类型的计算机 …… 77
3.5 小结 …… 80
硬件部分小结
第二部分 软件
第4章 算法 …… 89
4.1 线性算法 …… 91
4.2 二分查找 …… 94
4.3 排序 …… 96
4.4 难题和复杂性 …… 102
4.5 小结 …… 107
第5章 编程与编程语言 …… 109
5.1 汇编语言 …… 110
5.2 高级语言 …… 112
5.3 软件开发 …… 123
5.3.1 库、接口和开发工具包 …… 124
5.3.2 bug …… 126
5.4 知识产权 …… 130
5.4.1 商业秘密 …… 131
5.4.2 商标 …… 131
5.4.3 版权 …… 131
5.4.4 专利 …… 133
5.4.5 许可 …… 135
5.5 标准 …… 138
5.6 开源软件 …… 140
5.7 小结 …… 143
第6章 软件系统 …… 144
6.1 操作系统 …… 145
6.2 操作系统是如何工作的 …… 154
6.2.1 系统调用 …… 155
6.2.2 设备驱动程序 …… 156
6.3 其他操作系统 …… 158
6.4 文件系统 …… 159
6.4.1 二级存储文件系统 …… 161
6.4.2 删除文件 …… 165
6.4.3 其他文件系统 …… 167
6.5 应用程序 …… 170
6.6 软件层次 …… 173
6.7 小结 …… 176
第7章 学习编程 …… 178
7.1 编程语言的基本概念 …… 180
7.2 个JavaScript程序 …… 182
7.3 第二个JavaScript程序 …… 184
7.4 循环和条件 …… 186
7.5 JavaScript库和接口 …… 190
7.6 JavaScript是如何工作的 …… 192
7.7 个Python程序 …… 193
7.8 第二个Python程序 …… 195
7.9 Python库和接口 …… 197
7.10 Python是如何工作的 …… 201
7.11 小结 …… 202
软件部分小结
第三部分 通信
第8章 网络 …… 215
8.1 电话与调制解调器 …… 216
8.2 有线电视和DSL …… 217
8.3 局域网和以太网 …… 220
8.4 无线网络 …… 224
8.5 手机 …… 227
8.6 带宽 …… 232
8.7 压缩 …… 233
8.8 错误检测与纠正 …… 237
8.9 小结 …… 239
第9章 互联网 …… 241
9.1 互联网概述 …… 243
9.2 域名和地址 …… 247
9.2.1 域名系统 …… 249
9.2.2 IP地址 …… 250
9.2.3 根服务器 …… 252
9.2.4 注册你自己的域名 …… 253
9.3 路由 …… 254
9.4 TCP/IP …… 257
9.4.1 互联网协议 …… 259
9.4.2 传输控制协议 …… 260
9.5 高层协议 …… 263
9.5.1 Telnet和SSH协议:远程登录 …… 264
9.5.2 SMTP:简单邮件传输协议 …… 265
9.5.3 文件共享和点对点协议 …… 268
9.6 互联网上的版权问题 …… 270
9.7 物联网 …… 273
9.8 小结 …… 275
第10章 万维网 …… 279
10.1 万维网是如何工作的 …… 281
10.2 HTML …… 283
10.3 cookie …… 287
10.4 动态网页 …… 289
10.5 网页之外的动态内容 …… 292
10.6 病毒、蠕虫和木马 …… 293
10.7 Web安全 …… 297
10.7.1 对客户端的攻击 …… 297
10.7.2 对服务器的攻击 …… 305
10.7.3 对传输中信息的攻击 …… 308
10.8 自我防御 …… 309
10.9 小结 …… 314
第四部分 数据
第11章 数据和信息 …… 319
11.1 搜索 …… 321
11.2 跟踪 …… 327
11.3 社交网络 …… 338
11.4 数据挖掘和聚合 …… 343
11.5 云计算 …… 347
11.6 小结 …… 354
第12章 人工智能和机器学习 …… 356
12.1 历史背景 ……
译者序
前言
引言 …… 1
部分 硬件
第1章 什么是计算机 …… 16
1.1 逻辑结构 …… 20
1.1.1 处理器 …… 21
1.1.2 主存储器 …… 22
1.1.3 二级存储器 …… 24
1.1.4 其他 …… 27
1.2 物理结构 …… 28
1.3 摩尔定律 …… 33
1.4 小结 …… 35
第2章 比特、字节和信息的表示 …… 38
2.1 模拟和数字 …… 39
2.2 模数转换 …… 41
2.2.1 图像的数字化 …… 41
2.2.2 声音的数字化 …… 43
2.2.3 电影的数字化 …… 47
2.2.4 文本的数字化 …… 48
2.3 比特、字节和二进制 …… 49
2.3.1 比特 …… 50
2.3.2 2的幂和10的幂 …… 52
2.3.3 二进制数值 …… 52
2.3.4 字节 …… 55
2.4 小结 …… 58
第3章 深入了解处理器 …… 60
3.1 玩具计算机 …… 61
3.1.1 个玩具程序 …… 62
3.1.2 第二个玩具程序 …… 64
3.1.3 分支指令 …… 66
3.1.4 内存中的表示 …… 70
3.2 真实的处理器 …… 71
3.3 缓存 …… 75
3.4 其他类型的计算机 …… 77
3.5 小结 …… 80
硬件部分小结
第二部分 软件
第4章 算法 …… 89
4.1 线性算法 …… 91
4.2 二分查找 …… 94
4.3 排序 …… 96
4.4 难题和复杂性 …… 102
4.5 小结 …… 107
第5章 编程与编程语言 …… 109
5.1 汇编语言 …… 110
5.2 高级语言 …… 112
5.3 软件开发 …… 123
5.3.1 库、接口和开发工具包 …… 124
5.3.2 bug …… 126
5.4 知识产权 …… 130
5.4.1 商业秘密 …… 131
5.4.2 商标 …… 131
5.4.3 版权 …… 131
5.4.4 专利 …… 133
5.4.5 许可 …… 135
5.5 标准 …… 138
5.6 开源软件 …… 140
5.7 小结 …… 143
第6章 软件系统 …… 144
6.1 操作系统 …… 145
6.2 操作系统是如何工作的 …… 154
6.2.1 系统调用 …… 155
6.2.2 设备驱动程序 …… 156
6.3 其他操作系统 …… 158
6.4 文件系统 …… 159
6.4.1 二级存储文件系统 …… 161
6.4.2 删除文件 …… 165
6.4.3 其他文件系统 …… 167
6.5 应用程序 …… 170
6.6 软件层次 …… 173
6.7 小结 …… 176
第7章 学习编程 …… 178
7.1 编程语言的基本概念 …… 180
7.2 个JavaScript程序 …… 182
7.3 第二个JavaScript程序 …… 184
7.4 循环和条件 …… 186
7.5 JavaScript库和接口 …… 190
7.6 JavaScript是如何工作的 …… 192
7.7 个Python程序 …… 193
7.8 第二个Python程序 …… 195
7.9 Python库和接口 …… 197
7.10 Python是如何工作的 …… 201
7.11 小结 …… 202
软件部分小结
第三部分 通信
第8章 网络 …… 215
8.1 电话与调制解调器 …… 216
8.2 有线电视和DSL …… 217
8.3 局域网和以太网 …… 220
8.4 无线网络 …… 224
8.5 手机 …… 227
8.6 带宽 …… 232
8.7 压缩 …… 233
8.8 错误检测与纠正 …… 237
8.9 小结 …… 239
第9章 互联网 …… 241
9.1 互联网概述 …… 243
9.2 域名和地址 …… 247
9.2.1 域名系统 …… 249
9.2.2 IP地址 …… 250
9.2.3 根服务器 …… 252
9.2.4 注册你自己的域名 …… 253
9.3 路由 …… 254
9.4 TCP/IP …… 257
9.4.1 互联网协议 …… 259
9.4.2 传输控制协议 …… 260
9.5 高层协议 …… 263
9.5.1 Telnet和SSH协议:远程登录 …… 264
9.5.2 SMTP:简单邮件传输协议 …… 265
9.5.3 文件共享和点对点协议 …… 268
9.6 互联网上的版权问题 …… 270
9.7 物联网 …… 273
9.8 小结 …… 275
第10章 万维网 …… 279
10.1 万维网是如何工作的 …… 281
10.2 HTML …… 283
10.3 cookie …… 287
10.4 动态网页 …… 289
10.5 网页之外的动态内容 …… 292
10.6 病毒、蠕虫和木马 …… 293
10.7 Web安全 …… 297
10.7.1 对客户端的攻击 …… 297
10.7.2 对服务器的攻击 …… 305
10.7.3 对传输中信息的攻击 …… 308
10.8 自我防御 …… 309
10.9 小结 …… 314
第四部分 数据
第11章 数据和信息 …… 319
11.1 搜索 …… 321
11.2 跟踪 …… 327
11.3 社交网络 …… 338
11.4 数据挖掘和聚合 …… 343
11.5 云计算 …… 347
11.6 小结 …… 354
第12章 人工智能和机器学习 …… 356
12.1 历史背景 ……
猜您喜欢