计算机科学概论(第9版)
布鲁克希尔(J.Glenn Brookshear),世界知名的计算机科学教育家。他在1975年获得墨西哥州立大学博士学位后,创立了Marquette大学的计算机科学学位项目,并在该校任教至今。他的主要研究方向是计算理论。著有Theory of Computation:Formal Languanges,Automata,and Complexity。
本书是计算机科学导论课程的一本经典教材,是作者多年教学经验的结晶,是国际上众多名校的指定教材。本书涉及计算机科学的方方面面,介绍了计算机硬件、软件、数据组织和计算理论等四个方面的内容,包括编码及计算机体系结构的基本原理、操作系统、计算机网络、算法、程序设计语言、数据结构和数据库、人工智能以及计算理论等。本书在内容编排上,在力求保持学科广度的同时,还兼顾主题的深度,并把握了新技术趋势。书中配有大量的图、表和示例以增强读者对知识的掌握,并提供了丰富的习题以加强学生的参与性——在本版里包含1000多个问题,用于复习、扩展讨论过的内容,或者提示以后会涉及的有关主题。部分习题的答案可以从网上下载。
本书既适合国内的大专院校用作计算机基础课教材,也可以供有意在计算机方面发展的非计算机专业读者作为入门参考。
本书既适合国内的大专院校用作计算机基础课教材,也可以供有意在计算机方面发展的非计算机专业读者作为入门参考。
第0章 绪论
0.1 算法的作用
0.2 计算机器的由来
0.3 算法的科学
0.4 抽象
0.5 学习大纲
0.6 社会影响
0.7 社会问题
课外阅读
第1章 数据存储
1.1 位和位存储
1.1.1 布尔运算
1.1.2 门和触发器
1.1.3 十六进制记数法
1.2 主存储器
1.2.1 存储器结构
1.2.2 存储器容量的度量
1.3 海量存储器
1.3.1 磁学系统
1.3.2 光学系统
1.3.3 闪存驱动器
1.3.4 文件存储及检索
1.4 用位模式表示信息
1.4.1 文本的表示
1.4.2 数值的表示
1.4.3 图像的表示
1.4.4 声音的表示
*1.5 二进制系统
1.5.1 二进制记数法
1.5.2 二进制加法
1.5.3 二进制中的小数
1.6 整数存储
1.6.1 二进制补码记数法
1.6.2 余码记数法
1.7 小数的存储
1.7.1 浮点记数法
1.7.2 截断误差
1.8 数据压缩
1.8.1 通用的数据压缩技术
1.8.2 图像压缩
1.8.3 音频和视频压缩
1.9 通信差错
1.9.1 奇偶校验位
1.9.2 纠错编码
复习题
社会问题
课外阅读
第2章 数据操控
2.1 计算机体系结构
2.2 机器语言
2.2.1 指令系统
2.2.2 一种演示用的机器语言
2.3 程序执行
2.3.1 程序执行的一个例子
2.3.2 程序与数据
2.4 算术/逻辑指令
2.4.1 逻辑运算
2.4.2 循环移位及移位运算
2.4.3 算术运算
2.5 与其他设备的通信
2.5.1 控制器的作用
2.5.2 直接内存存取
2.5.3 握手
2.5.4 流行的通信媒介
2.5.5 通信速率
2.6 其他体系结构
2.6.1 流水线
2.6.2 多处理器计算机
复习题
社会问题
课外阅读
第3章 操作系统
3.1 操作系统的历史
3.2 操作系统的体系结构
3.2.1 软件概述
3.2.2 操作系统组件
3.2.3 系统启动
3.3 协调机器的活动
3.3.1 进程的概念
3.3.2 进程管理
3.4 处理进程间的竞争
3.4.1 信号量
3.4.2 死锁
3.5 安全性
3.5.1 来自机器外部的攻击
3.5.2 来自机器内部的攻击
复习题
社会问题
课外阅读
第4章 组网及因特网
4.1 网络基础
4.1.1 网络分类
4.1.2 协议
4.1.3 网络互连
4.1.4 进程间通信
4.1.5 分布式系统
4.2 因特网
4.2.1 因特网体系结构
4.2.2 连接到因特网
4.2.3 因特网编址
4.2.4 因特网应用
4.3 万维网
4.3.1 万维网实现
4.3.2 HTML
4.3.3 XML
4.3.4 客户端和服务器端的活动
4.4 因特网协议
4.4.1 因特网软件的分层方法
4.4.2 TCP/IP协议簇
4.5 安全性
4.5.1 入侵的形式
4.5.2 防护和对策
4.5.3 加密
4.5.4 网络安全的法律途径
复习题
社会问题
课外阅读
第5章 算法
5.1 算法的概念
5.1.1 概览
5.1.2 算法的正式定义
5.1.3 算法的抽象本质
5.2 算法的表示
5.2.1 原语
5.2.2 伪代码
5.3 算法的发现
5.3.1 问题求解的艺术
5.3.2 入门
5.4 迭代结构
5.4.1 顺序搜索法
5.4.2 循环控制
5.4.3 插入排序算法
5.5 递归结构
5.5.1 二分搜索算法
5.5.2 递归控制
5.6 有效性和正确性
5.6.1 算法有效性
5.6.2 软件验证
复习题
社会问题
课外阅读
第6章 程序设计语言
6.1 历史回顾
6.1.1 早期程序设计语言
6.1.2 独立并超越机器
6.1.3 程序设计范型
6.2 传统的程序设计概念
6.2.1 变量和数据类型
6.2.2 数据结构
6.2.3 常量和字面量
6.2.4 赋值语句
6.2.5 控制语句
6.2.6 注释
6.3 过程单元
6.3.1 过程
6.3.2 参数
6.3.3 函数
6.4 语言实现
6.4.1 翻译过程
6.4.2 软件开发包
6.5 面向对象程序设计
6.5.1 类和对象
6.5.2 构造器
6.5.3 附加特性
6.6 程序设计中的并发活动
6.7 说明性程序设计
6.7.1 逻辑推演
6.7.2 Prolog
复习题
社会问题
课外阅读
第7章 软件工程
7.1 软件工程学科
7.2 软件生命周期
7.2.1 周期是个整体
7.2.2 传统的开发阶段
7.3 软件工程方法
7.4 模块化
7.4.1 模块的实现
7.4.2 耦合
7.4.3 内聚
7.4.4 构件
7.5 行业工具
7.5.1 较老的工具
7.5.2 统一建模语言
7.5.3 设计模式
7.6 测试
7.7 文档编制
7.8 软件所有权和责任
复习题
社会问题
课外阅读
第8章 数据抽象
8.1 数据结构基础
8.1.1 基本数据结构
8.1.2 抽象
8.1.3 静态结构与动态结构
8.1.4 指针
8.2 数据结构的实现
8.2.1 数组的存储
8.2.2 表的存储
8.2.3 栈和队列的存储
8.2.4 二叉树的存储
8.2.5 数据结构的操作
8.3 一个简短案例的研究
8.4 定制的数据类型
8.4.1 用户自定义数据类型
8.4.2 抽象数据类型
8.5 类和对象
8.6 机器语言中的指针
复习题
社会问题
课外阅读
第9章 数据库系统
9.1 数据库基础
9.1.1 模式的作用
9.1.2 数据库管理系统
9.1.3 数据库模型
9.2 关系模型
9.2.1 关系设计中的问题
9.2.2 关系运算
9.2.3 SQL
9.3 面向对象数据库
9.4 维护数据库的完整性
9.4.1 提交/回滚协议
9.4.2 锁定
9.5 传统的文件结构
9.5.1 顺序文件
9.5.2 索引文件
9.5.3 散列文件
9.6 数据挖掘
9.7 数据库技术的社会影响
复习题
社会问题
课外阅读
第10章 人工智能
10.1 智能与机器
10.1.1 智能体
10.1.2 性能与模拟
10.1.3 图灵测试
10.2 感知
10.2.1 理解图像
10.2.2 语言处理
10.3 推理
10.3.1 产生式系统
10.3.2 搜索树
10.3.3 启发
10.4 其他研究领域
10.4.1 知识的表达和处理
10.4.2 学习
10.5 人工神经网络
10.5.1 基本特性
10.5.2 训练人工神经网络
10.5.3 联想记忆
10.6 机器人学
10.7 后果的思考
复习题
社会问题
课外阅读
第11章 计算理论
11.1 函数及其计算
11.2 图灵机
11.2.1 图灵机原理
11.2.2 丘奇-图灵论题
11.3 通用程序设计语言
11.3.1 Bare Bones语言
11.3.2 用Bare Bones语言编程
11.3.3 Bare Bones的通用性
11.4 一个不可计算的函数
11.4.1 停机问题
11.4.2 停机问题的不可解性
11.5 问题复杂性
11.5.1 问题复杂性的度量
11.5.2 多项式问题与非多项式问题
11.5.3 NP问题
11.6 公钥密码学
11.6.1 模表示法
11.6.2 RSA公钥密码系统
复习题
社会问题
课外阅读
附录A ASCII码
附录B 处理二进制补码表示的电路
附录C 一种简单的机器语言
C.1 机器体系结构
C.2 机器语言
附录D 高级语言程序示例
D.1 Ada语言
D.2 C语言
D.3 C++语言
D.4 C#语言
D.5 FORTRAN语言
D.6 Java语言
附录E 迭代结构与递归结构的等价性
索引
问题与练习答案(图灵网站下载)
^ 收 起
0.1 算法的作用
0.2 计算机器的由来
0.3 算法的科学
0.4 抽象
0.5 学习大纲
0.6 社会影响
0.7 社会问题
课外阅读
第1章 数据存储
1.1 位和位存储
1.1.1 布尔运算
1.1.2 门和触发器
1.1.3 十六进制记数法
1.2 主存储器
1.2.1 存储器结构
1.2.2 存储器容量的度量
1.3 海量存储器
1.3.1 磁学系统
1.3.2 光学系统
1.3.3 闪存驱动器
1.3.4 文件存储及检索
1.4 用位模式表示信息
1.4.1 文本的表示
1.4.2 数值的表示
1.4.3 图像的表示
1.4.4 声音的表示
*1.5 二进制系统
1.5.1 二进制记数法
1.5.2 二进制加法
1.5.3 二进制中的小数
1.6 整数存储
1.6.1 二进制补码记数法
1.6.2 余码记数法
1.7 小数的存储
1.7.1 浮点记数法
1.7.2 截断误差
1.8 数据压缩
1.8.1 通用的数据压缩技术
1.8.2 图像压缩
1.8.3 音频和视频压缩
1.9 通信差错
1.9.1 奇偶校验位
1.9.2 纠错编码
复习题
社会问题
课外阅读
第2章 数据操控
2.1 计算机体系结构
2.2 机器语言
2.2.1 指令系统
2.2.2 一种演示用的机器语言
2.3 程序执行
2.3.1 程序执行的一个例子
2.3.2 程序与数据
2.4 算术/逻辑指令
2.4.1 逻辑运算
2.4.2 循环移位及移位运算
2.4.3 算术运算
2.5 与其他设备的通信
2.5.1 控制器的作用
2.5.2 直接内存存取
2.5.3 握手
2.5.4 流行的通信媒介
2.5.5 通信速率
2.6 其他体系结构
2.6.1 流水线
2.6.2 多处理器计算机
复习题
社会问题
课外阅读
第3章 操作系统
3.1 操作系统的历史
3.2 操作系统的体系结构
3.2.1 软件概述
3.2.2 操作系统组件
3.2.3 系统启动
3.3 协调机器的活动
3.3.1 进程的概念
3.3.2 进程管理
3.4 处理进程间的竞争
3.4.1 信号量
3.4.2 死锁
3.5 安全性
3.5.1 来自机器外部的攻击
3.5.2 来自机器内部的攻击
复习题
社会问题
课外阅读
第4章 组网及因特网
4.1 网络基础
4.1.1 网络分类
4.1.2 协议
4.1.3 网络互连
4.1.4 进程间通信
4.1.5 分布式系统
4.2 因特网
4.2.1 因特网体系结构
4.2.2 连接到因特网
4.2.3 因特网编址
4.2.4 因特网应用
4.3 万维网
4.3.1 万维网实现
4.3.2 HTML
4.3.3 XML
4.3.4 客户端和服务器端的活动
4.4 因特网协议
4.4.1 因特网软件的分层方法
4.4.2 TCP/IP协议簇
4.5 安全性
4.5.1 入侵的形式
4.5.2 防护和对策
4.5.3 加密
4.5.4 网络安全的法律途径
复习题
社会问题
课外阅读
第5章 算法
5.1 算法的概念
5.1.1 概览
5.1.2 算法的正式定义
5.1.3 算法的抽象本质
5.2 算法的表示
5.2.1 原语
5.2.2 伪代码
5.3 算法的发现
5.3.1 问题求解的艺术
5.3.2 入门
5.4 迭代结构
5.4.1 顺序搜索法
5.4.2 循环控制
5.4.3 插入排序算法
5.5 递归结构
5.5.1 二分搜索算法
5.5.2 递归控制
5.6 有效性和正确性
5.6.1 算法有效性
5.6.2 软件验证
复习题
社会问题
课外阅读
第6章 程序设计语言
6.1 历史回顾
6.1.1 早期程序设计语言
6.1.2 独立并超越机器
6.1.3 程序设计范型
6.2 传统的程序设计概念
6.2.1 变量和数据类型
6.2.2 数据结构
6.2.3 常量和字面量
6.2.4 赋值语句
6.2.5 控制语句
6.2.6 注释
6.3 过程单元
6.3.1 过程
6.3.2 参数
6.3.3 函数
6.4 语言实现
6.4.1 翻译过程
6.4.2 软件开发包
6.5 面向对象程序设计
6.5.1 类和对象
6.5.2 构造器
6.5.3 附加特性
6.6 程序设计中的并发活动
6.7 说明性程序设计
6.7.1 逻辑推演
6.7.2 Prolog
复习题
社会问题
课外阅读
第7章 软件工程
7.1 软件工程学科
7.2 软件生命周期
7.2.1 周期是个整体
7.2.2 传统的开发阶段
7.3 软件工程方法
7.4 模块化
7.4.1 模块的实现
7.4.2 耦合
7.4.3 内聚
7.4.4 构件
7.5 行业工具
7.5.1 较老的工具
7.5.2 统一建模语言
7.5.3 设计模式
7.6 测试
7.7 文档编制
7.8 软件所有权和责任
复习题
社会问题
课外阅读
第8章 数据抽象
8.1 数据结构基础
8.1.1 基本数据结构
8.1.2 抽象
8.1.3 静态结构与动态结构
8.1.4 指针
8.2 数据结构的实现
8.2.1 数组的存储
8.2.2 表的存储
8.2.3 栈和队列的存储
8.2.4 二叉树的存储
8.2.5 数据结构的操作
8.3 一个简短案例的研究
8.4 定制的数据类型
8.4.1 用户自定义数据类型
8.4.2 抽象数据类型
8.5 类和对象
8.6 机器语言中的指针
复习题
社会问题
课外阅读
第9章 数据库系统
9.1 数据库基础
9.1.1 模式的作用
9.1.2 数据库管理系统
9.1.3 数据库模型
9.2 关系模型
9.2.1 关系设计中的问题
9.2.2 关系运算
9.2.3 SQL
9.3 面向对象数据库
9.4 维护数据库的完整性
9.4.1 提交/回滚协议
9.4.2 锁定
9.5 传统的文件结构
9.5.1 顺序文件
9.5.2 索引文件
9.5.3 散列文件
9.6 数据挖掘
9.7 数据库技术的社会影响
复习题
社会问题
课外阅读
第10章 人工智能
10.1 智能与机器
10.1.1 智能体
10.1.2 性能与模拟
10.1.3 图灵测试
10.2 感知
10.2.1 理解图像
10.2.2 语言处理
10.3 推理
10.3.1 产生式系统
10.3.2 搜索树
10.3.3 启发
10.4 其他研究领域
10.4.1 知识的表达和处理
10.4.2 学习
10.5 人工神经网络
10.5.1 基本特性
10.5.2 训练人工神经网络
10.5.3 联想记忆
10.6 机器人学
10.7 后果的思考
复习题
社会问题
课外阅读
第11章 计算理论
11.1 函数及其计算
11.2 图灵机
11.2.1 图灵机原理
11.2.2 丘奇-图灵论题
11.3 通用程序设计语言
11.3.1 Bare Bones语言
11.3.2 用Bare Bones语言编程
11.3.3 Bare Bones的通用性
11.4 一个不可计算的函数
11.4.1 停机问题
11.4.2 停机问题的不可解性
11.5 问题复杂性
11.5.1 问题复杂性的度量
11.5.2 多项式问题与非多项式问题
11.5.3 NP问题
11.6 公钥密码学
11.6.1 模表示法
11.6.2 RSA公钥密码系统
复习题
社会问题
课外阅读
附录A ASCII码
附录B 处理二进制补码表示的电路
附录C 一种简单的机器语言
C.1 机器体系结构
C.2 机器语言
附录D 高级语言程序示例
D.1 Ada语言
D.2 C语言
D.3 C++语言
D.4 C#语言
D.5 FORTRAN语言
D.6 Java语言
附录E 迭代结构与递归结构的等价性
索引
问题与练习答案(图灵网站下载)
^ 收 起
布鲁克希尔(J.Glenn Brookshear),世界知名的计算机科学教育家。他在1975年获得墨西哥州立大学博士学位后,创立了Marquette大学的计算机科学学位项目,并在该校任教至今。他的主要研究方向是计算理论。著有Theory of Computation:Formal Languanges,Automata,and Complexity。
本书是计算机科学导论课程的一本经典教材,是作者多年教学经验的结晶,是国际上众多名校的指定教材。本书涉及计算机科学的方方面面,介绍了计算机硬件、软件、数据组织和计算理论等四个方面的内容,包括编码及计算机体系结构的基本原理、操作系统、计算机网络、算法、程序设计语言、数据结构和数据库、人工智能以及计算理论等。本书在内容编排上,在力求保持学科广度的同时,还兼顾主题的深度,并把握了新技术趋势。书中配有大量的图、表和示例以增强读者对知识的掌握,并提供了丰富的习题以加强学生的参与性——在本版里包含1000多个问题,用于复习、扩展讨论过的内容,或者提示以后会涉及的有关主题。部分习题的答案可以从网上下载。
本书既适合国内的大专院校用作计算机基础课教材,也可以供有意在计算机方面发展的非计算机专业读者作为入门参考。
本书既适合国内的大专院校用作计算机基础课教材,也可以供有意在计算机方面发展的非计算机专业读者作为入门参考。
比价列表