关于我们
书单推荐
新书推荐
|
计算机科学概论 本书由两位知名的计算机科学教育家编写,全面而细致地介绍了计算机科学的各个方面。书中从信息层开始,历经硬件层、程序设计层、操作系统层、应用程序层和通信层,深入剖析了计算系统的每个分层,后讨论了计算的限制。此外,正文中穿插了大量的人物传记、历史点评、道德问题和新的技术发展信息,有助于你进一步了解计算机科学。每章后面都附带有大量的练习,可以帮助你即时重温并掌握这一章所述的内容。
前 言Computer Science Illuminated, Fifth Edition
出版者的话
译者序 前言 第一部分 基础篇 第1章 全景图 2 1.1 计算系统 2 1.1.1 计算系统的分层 3 1.1.2 抽象 4 1.2 计算的历史 5 1.2.1 计算硬件简史 5 1.2.2 计算软件简史 12 1.2.3 预言 16 1.3 计算工具与计算学科 16 小结 18 道德问题:the Tenth Strand 18 练习 19 思考题 20 第二部分 信息层 第2章 二进制数值与记数系统 22 2.1 数字与计算 22 2.2 位置记数法 23 2.2.1 二进制、八进制和十六进制 26 2.2.2 其他记数系统中的运算 27 2.2.3 以2的幂为基数的记数系统 27 2.2.4 把十进制数转换成其他数制的数 29 2.2.5 二进制数值与计算机 29 小结 31 道德问题:the Tenth Strand的知识单元 31 练习 33 思考题 34 第3章 数据表示法 35 3.1 数据与计算机 35 3.1.1 模拟数据与数字数据 36 3.1.2 二进制表示法 38 3.2 数字数据表示法 39 3.2.1 负数表示法 39 3.2.2 实数表示法 42 3.3 文本表示法 44 3.3.1 ASCII字符集 45 3.3.2 Unicode字符集 45 3.3.3 文本压缩 46 3.4 音频数据表示法 49 3.4.1 音频格式 50 3.4.2 MP3音频格式 50 3.5 图像与图形表示法 51 3.5.1 颜色表示法 51 3.5.2 数字化图像与图形 52 3.5.3 图形的矢量表示法 53 3.6 视频表示法 53 小结 55 道德问题:道德准则 55 练习 56 思考题 58 第三部分 硬件层 第4章 门和电路 60 4.1 计算机和电学 60 4.2 门 62 4.2.1 非门 62 4.2.2 与门 63 4.2.3 或门 63 4.2.4 异或门 64 4.2.5 与非门和或非门 64 4.2.6 门处理回顾 65 4.2.7 具有更多输入的门 65 4.3 门的构造 66 4.4 电路 67 4.4.1 组合电路 68 4.4.2 加法器 70 4.4.3 多路复用器 71 4.5 存储器电路 72 4.6 集成电路 73 4.7 CPU芯片 73 小结 74 道德问题:这些违反道德规范吗? 74 练习 75 思考题 77 第5章 计算部件 78 5.1 独立的计算机部件 78 5.2 存储程序的概念 82 5.2.1 冯·诺伊曼体系结构 82 5.2.2 读取-执行周期 87 5.2.3 RAM和ROM 88 5.2.4 二级存储设备 89 5.2.5 触摸屏 92 5.3 嵌入式系统 93 5.4 并行体系结构 94 5.4.1 并行计算 94 5.4.2 并行硬件分类 95 小结 96 道德问题:数字鸿沟 96 练习 97 思考题 98 第四部分 程序设计层 第6章 低级程序设计语言与伪代码 102 6.1 计算机操作 102 6.2 机器语言 103 6.3 一个程序实例 108 6.3.1 手工模拟 109 6.3.2 Pep/8模拟程序 109 6.4 汇编语言 111 6.4.1 Pep/8汇编语言 112 6.4.2 汇编器指令 112 6.4.3 Hello程序的汇编语言版本 113 6.4.4 一个新程序 113 6.4.5 具有分支的程序 115 6.4.6 具有循环的程序 116 6.5 表达算法 118 6.5.1 伪代码的功能 118 6.5.2 执行伪代码算法 121 6.5.3 写伪代码算法 123 6.5.4 翻译伪代码算法 124 6.6 测试 125 小结 126 道德问题:版权与软件盗版 127 练习 127 思考题 129 第7章 问题求解与算法设计 130 7.1 如何解决问题 130 7.1.1 提出问题 130 7.1.2 寻找熟悉的情况 132 7.1.3 分治法 132 7.1.4 算法 133 7.1.5 计算机问题求解过程 133 7.1.6 方法总结 134 7.1.7 测试算法 135 7.2 有简单参数的算法 135 7.2.1 带有选择的算法 135 7.2.2 带有循环的算法 136 7.3 复杂变量 139 7.3.1 数组 139 7.3.2 记录 140 7.4 搜索算法 141 7.4.1 顺序搜索 141 7.4.2 有序数组中的顺序搜索 141 7.4.3 二分检索 142 7.5 排序 144 7.5.1 选择排序 144 7.5.2 冒泡排序 145 7.5.3 插入排序 147 7.6 递归算法 147 7.6.1 子程序语句 148 7.6.2 递归阶乘 149 7.6.3 递归二分检索 149 7.6.4 快速排序 150 7.7 几个重要思想 153 7.7.1 信息隐蔽 153 7.7.2 抽象 154 7.7.3 事物命名 155 7.7.4 测试 155 小结 155 道德问题:开源软件 156 练习 157 思考题 159 第8章 抽象数据类型与子程序 160 8.1 抽象数据类型 160 8.2 栈 161 8.3 队列 161 8.4 列表 162 8.5 树 164 8.5.1 二叉树 164 8.5.2 二叉检索树 165 8.5.3 其他操作 169 8.6 图 169 8.6.1 创建图 171 8.6.2 图算法 171 8.7 子程序 176 8.7.1 参数传递 177 8.7.2 值参与引用参数 178 小结 180 道德问题:工作场所监视 180 练习 181 思考题 183 第9章 面向对象设计与高级程序设计语言 184 9.1 面向对象方法 184 9.1.1 面向对象 185 9.1.2 设计方法 185 9.1.3 一个计算机示例 187 9.2 翻译过程 189 9.2.1 编译器 190 9.2.2 解释器 190 9.3 程序设计语言的范型 192 9.3.1 命令式范型 192 9.3.2 声明式范型 193 9.4 高级程序设计语言的功能性 194 9.4.1 布尔表达式 194 9.4.2 数据归类 196 9.4.3 输入/输出结构 199 9.4.4 控制结构 200 9.5 面向对象语言的功能性 204 9.5.1 封装 204 9.5.2 类 205 9.5.3 继承 206 9.5.4 多态 207 9.6 过程设计与面向对象设计的区别 207 小结 208 道德问题:恶作剧与诈骗 209 练习 210 思考题 212 第五部分 操作系统层 第10章 操作系统 214 10.1 操作系统的角色 214 10.1.1 内存、进程与CPU管理 216 10.1.2 批处理 216 10.1.3 分时 217 10.1.4 其他OS要素 218 10.2 内存管理 218 10.2.1 单块内存管理 219 10.2.2 分区内存管理 220 10.2.3 页式内存管理 221 10.3 进程管理 223 10.3.1 进程状态 223 10.3.2 进程控制块 224 10.4 CPU调度 224 10.4.1 先到先服务 225 10.4.2 最短作业优先 226 10.4.3 轮询法 226 小结 227 道德问题:医疗隐私——健康保险携带与责任法案 228 练习 229 思考题 231 第11章 文件系统和目录 232 11.1 文件系统 232 11.1.1 文本文件和二进制文件 233 11.1.2 文件类型 233 11.1.3 文件操作 234 11.1.4 文件访问 235 11.1.5 文件保护 236 11.2 目录 237 11.2.1 目录树 237 11.2.2 路径名 239 11.3 磁盘调度 241 11.3.1 先到先服务磁盘调度法 242 11.3.2 最短寻道时间优先磁盘调度法 242 11.3.3 SCAN磁盘调度法 242 小结 243 道德问题:选择加入和选择退出 243 练习 244 思考题 246 第六部分 应用程序层 第12章 信息系统 248 12.1 信息管理 248 12.2 电子制表软件 249 12.2.1 电子数据表公式 250 12.2.2 循环引用 254 12.2.3 电子数据表分析 254 12.3 数据库管理系统 255 12.3.1 关系模型 256 12.3.2 关系 257 12.3.3 结构化查询语言 258 12.3.4 数据库设计 260 12.4 电子商务 261 小结 262 道德问题:从竞选来看政治与网络 262 练习 263 思考题 265 第13章 人工智能 266 13.1 思维机 266 13.1.1 图灵测试 267 13.1.2 AI问题的各个方面 268 13.2 知识表示 268 13.2.1 语义网 268 13.2.2 检索树 271 13.3 专家系统 273 13.4 神经网络 275 13.4.1 生物神经网络 275 13.4.2 人工神经网络 276 13.5 自然语言处理 277 13.5.1 语音合成 277 13.5.2 语音识别 278 13.5.3 自然语言理解 279 13.6 机器人学 280 13.6.1 感知-规划-执行范型 280 13.6.2 包孕体系结构 282 13.6.3 物理部件 283 小结 283 道德问题:从民众来看政治与网络 284 练习 284 思考题 286 第14章 模拟、图形学、游戏和其他应用 287 14.1 什么是模拟 287 14.1.1 复杂系统 287 14.1.2 模型 288 14.1.3 构造模型 288 14.2 特殊模型 289 14.2.1 排队系统 289 14.2.2 气象模型 292 14.2.3 计算生物学 295 14.2.4 其他模型 295 14.2.5 必要的计算能力 296 14.3 计算机图形学 296 14.3.1 光的工作原理 297 14.3.2 物体形状 298 14.3.3 光模拟 298 14.3.4 复杂对象的建模 299 14.3.5 让物体动起来 303 14.4 游戏 304 14.4.1 游戏的历史 304 14.4.2 创建虚拟世界 305 14.4.3 游戏设计与开发 305 14.4.4 游戏编程 306 小结 307 道德问题:游戏成瘾 307 练习 308 思考题 309 第七部分 通信层 第15章 网络 312 15.1 连网 312 15.1.1 网络的类型 313 15.1.2 Internet连接 315 15.1.3 包交换 317 15.2 开放式系统与协议 318 15.2.1 开放式系统 318 15.2.2 网络协议 319 15.2.3 TCP/IP 319 15.2.4 高层协议 320 15.2.5 MIME类型 321 15.2.6 防火墙 321 15.3 网络地址 322 15.4 云计算 324 小结 325 道德问题:社交网络的影响 326 练习 327 思考题 328 第16章 万维网 329 16.1 Web简介 329 16.1.1 搜索引擎 331 16.1.2 即时消息 331 16.1.3 博客 331 16.1.4 cookie 332 16.2 HTML 333 16.2.1 基本的HTML格式 335 16.2.2 图像与链接 335 16.2.3 HTML5 337 16.3 交互式网页 337 16.3.1 Java小程序 337 16.3.2 Java服务器页 338 16.4 XML 339 16.5 社交网络 341 小结 342 道德问题:赌博与互联网 344 练习 344 思考题 346 第17章 计算机安全 347 17.1 各级安全 347 17.2 阻止未授权访问 349 17.2.1 密码 349 17.2.2 验证码 351 17.2.3 指纹分析 352 17.3 恶意代码 352 17.3.1 杀毒软件 353 17.3.2 安全攻击 353 17.4 密码学 355 17.5 保护你的在线信息 357 17.5.1 安全与可移动设备 359 17.5.2 维基解密 359 小结 360 道德问题:博客 361 练习 362 思考题 363 第八部分 总结 第18章 计算的限制 366 18.1 硬件 366 18.1.1 算术运算的限制 366 18.1.2 部件的限制 370 18.1.3 通信的限制 371 18.2 软件 372 18.2.1 软件的复杂度 372 18.2.2 当前提高软件质量的方法 373 18.2.3 臭名昭著的软件错误 376 18.3 问题 377 18.3.1 算法比较 377 18.3.2 图灵机 382 18.3.3 停机问题 384 18.3.4 算法分类 386 小结 387 道德问题:Therac-25灾难剖析 387 练习 388 思考题 389 参考文献 390 索引 396
你还可能感兴趣
我要评论
|