图书目录

目    录

第1章  概述 1

1.1  计算的起源 1

1.2  计算机的产生和发展阶段 3

1.2.1  计算机产生之前的计算历史 3

1.2.2  计算机的产生 8

1.2.3  计算机的发展阶段 12

1.2.4  中国计算机的发展历程 14

1.3  计算机的应用领域和发展趋势 17

1.3.1  计算机的应用领域 17

1.3.2  计算机的发展趋势 19

1.4  计算学科 21

1.4.1  计算学科的定义 21

1.4.2  计算学科的本质 21

1.4.3  计算学科的三个过程 22

1.4.4  计算学科新的应用领域 23

1.5  计算机科学与技术学科的知识体系 25

1.5.1  计算机科学与技术学科的

形成与发展 25

1.5.2  计算机科学与技术学科的

定义 25

1.5.3  计算机科学与技术学科的根本

问题及研究范畴 26

1.5.4  计算机科学课程体系的核心

内容 26

1.6  计算机科学与技术学科的教育 28

1.6.1  教育的目的和基本要求 29

1.6.2  工科还是理科 29

1.6.3  理论与实践相结合 30

1.6.4  创新意识培养 30

1.6.5  学习方法 31

1.7  社会信息化的挑战 32

1.8  计算机产业 32

本章小结 33

习题 33

第2章  计算机体系结构与组织 37

2.1  数值数据 37

2.1.1  数的表示及数制转换 37

2.1.2  数的原码、反码和补码 42

2.1.3  定点数和浮点数 44

2.1.4  十进制数的编码 46

2.2  非数值数据 47

2.2.1  文字信息的编码 47

2.2.2  声音的编码 50

2.2.3  图形数据的编码 51

2.3  数据的机器编码 51

2.3.1  数据的机器级编码 51

2.3.2  数据的汇编级编码 52

2.4  数字逻辑与数字系统 52

2.4.1  基本逻辑关系及逻辑门 53

2.4.2  逻辑代数与逻辑函数 55

2.5  计算机系统的组成 58

2.5.1  图灵模型 58

2.5.2  冯·诺依曼模型 59

2.5.3  计算机系统的组成 60

2.5.4  计算机的硬件系统 60

2.5.5  计算机的软件系统 67

2.5.6  计算机的特点 68

2.5.7  计算机系统的主要技术指标 69

2.5.8  计算机的分类 70

2.5.9  计算机的基本工作方式 71

2.6  存储系统的结构 71

2.6.1  存储器与存储系统 71

2.6.2  存储系统的组织结构 73

2.6.3  高速缓冲存储器 73

2.6.4  虚拟存储器 74

2.7  输入/输出系统 74

2.7.1  输入/输出系统 75

2.7.2  总线 75

2.7.3  输入/输出接口 76

2.8  多核技术 77

2.8.1  多核技术时代到来 77

2.8.2  多核的关键技术 77

2.9  高性能计算机 80

2.10  并行计算机 81

2.11  分布式系统 81

本章小结 82

习题 82

第3章  程序设计语言 85

3.1  程序设计语言概述 85

3.1.1  程序的概念 85

3.1.2  计算机程序设计语言 85

3.1.3  高级语言程序设计的基本

内容 89

3.1.4  高级语言的数据表示手段 92

3.2  声明和类型 93

3.3  类型系统 93

3.4  编译原理 94

3.4.1  编译程序概述 94

3.4.2  词法分析 96

3.4.3  语法分析 96

3.4.4  语义处理 97

3.4.5  中间代码生成 98

3.4.6  中间代码优化 98

3.4.7  目标代码生成 99

3.4.8  编译技术的新发展 99

3.5  程序设计语言的设计 100

本章小结 100

习题 101

第4章  程序设计基础 103

4.1  程序设计 103

4.2  程序设计方法 103

4.2.1  结构化程序设计方法 104

4.2.2  面向对象的程序设计方法 107

4.2.3  函数程序设计 109

4.2.4  程序设计风格 110

4.2.5  程序设计举例 111

4.3  基本数据结构 112

4.3.1  基本概念 112

4.3.2  几种典型的数据结构 113

4.3.3  查找 118

4.3.4  排序 119

4.4  事件驱动程序设计 121

本章小结 122

习题 122

第5章  算法与复杂性 124

5.1  算法分析 124

5.1.1  算法 124

5.1.2  算法的特性 125

5.2  常用算法 125

5.3  算法描述工具 128

5.4  算法的评价 129

5.5  算法设计策略 130

5.6  分布式算法 131

5.7  可计算性理论基础 131

5.8  NP问题 132

5.9  自动机理论 132

5.10  加密算法 133

5.11  几何算法 135

5.12  并行算法 135

本章小结 136

习题 136

第6章  信息管理 138

6.1  模型与信息系统 138

6.1.1  信息 138

6.1.2  信息模型 138

6.1.3  信息系统 139

6.2  数据库系统 139

6.2.1  数据库 139

6.2.2  数据管理技术的发展 141

6.2.3  数据模型 141

6.3  关系数据库 145

6.3.1  关系数据库 145

6.3.2  关系模型与关系模式 146

6.4  数据库查询语言SQL 148

6.4.1  SQL的特点 149

6.4.2  SQL的功能 149

6.4.3  SQL的基本概念 149

6.4.4  SQL的简单实例 150

6.5  关系数据库设计 152

6.5.1  关系数据库的设计原则 152

6.5.2  关系数据库的设计步骤 153

6.6  数据库管理 153

6.6.1  DBA和数据字典 153

6.6.2  数据库的安全性控制 154

6.6.3  事务处理 154

6.6.4  数据库的完整性控制 155

6.7  常用数据库管理系统 156

6.8  数据库的新发展 157

6.8.1  分布式数据库 157

6.8.2  空间数据库 157

6.8.3  多媒体数据库 158

6.8.4  数据仓库 158

6.8.5  信息存储与检索 158

6.8.6  超文本和超媒体 159

6.8.7  多媒体信息与多媒体系统 159

6.8.8  数字图书馆 160

本章小结 161

习题 161

第7章  软件工程 163

7.1  软件工程 163

7.1.1  软件危机 163

7.1.2  软件工程的基本概念 164

7.1.3  软件工程过程 166

7.1.4  软件生命周期 167

7.2  软件开发模型 168

7.2.1  瀑布模型 168

7.2.2  快速原型法模型 169

7.2.3  螺旋模型 171

7.2.4  喷泉模型 172

7.2.5  转换模型 173

7.2.6  智能模型 173

7.3  软件开发方法 174

7.3.1  面向数据结构方法 174

7.3.2  统一建模语言 174

7.3.3  软件复用和构件技术 175

7.4  软件质量评价和保证 177

7.4.1  软件质量的定义 177

7.4.2  软件质量的度量和评价 177

7.4.3  软件质量保证 178

7.5  质量度量模型 180

7.5.1  McCall 质量度量模型 180

7.5.2  ISO的软件质量评价模型 181

7.6  软件复杂性 182

7.6.1  软件复杂性的基本概念 182

7.6.2  软件复杂性的度量方法 182

7.7  软件项目管理 183

7.7.1  软件项目计划 183

7.7.2  软件项目计划内容 183

7.7.3  软件工程规范 183

7.7.4  软件开发成本估算 184

7.7.5  风险分析 184

7.7.6  软件项目进度安排 184

7.7.7  软件质量保证 186

7.8  软件可靠性 186

7.8.1  软件可靠性定义 186

7.8.2  软件可靠性指标 186

7.8.3  软件可靠性模型 186

7.9  软件评审 187

7.9.1  设计质量的评审内容 187

7.9.2  程序质量的评审内容 188

7.10  容错软件技术 189

7.10.1  容错软件定义 189

7.10.2  容错的一般方法 189

7.10.3  容错软件的设计过程 190

7.11  软件工程环境 190

7.11.1  软件开发环境 190

7.11.2  软件开发环境的分类 191

7.11.3  软件工具的基本概念 192

7.11.4  计算机辅助软件工程 193

本章小结 193

习题 194

第8章  操作系统 196

8.1  操作系统概述 196

8.1.1  操作系统的概念 196

8.1.2  操作系统的基本组成 200

8.1.3  操作系统在计算机系统中的

地位 205

8.1.4  操作系统的启动 205

8.2  操作系统的发展 206

8.2.1  手工操作阶段 206

8.2.2  批处理系统阶段 207

8.2.3  多道程序系统阶段 208

8.2.4  现代操作系统阶段 209

8.3  操作系统原理 210

8.4  操作系统的分类 211

8.5  操作系统的功能 212

8.5.1  资源管理功能 212

8.5.2  扩展的虚拟机功能 214

8.5.3  网络操作系统的功能 215

8.6  操作系统的体系结构 215

8.7  并发性 216

8.8  调度与分派 216

8.9  安全与保护 217

8.10  文件系统 219

8.11  容错 220

8.12  系统性能评价 221

8.13  脚本 222

8.14  主流操作系统 222

8.14.1  Windows操作系统 222

8.14.2  UNIX操作系统 223

8.14.3  Linux操作系统 224

8.15  操作系统的新发展 225

本章小结 226

习题 226

第9章  网络计算 228

9.1  通信与组网 228

9.1.1  数据通信的基本概念 228

9.1.2  数据通信方式 229

9.1.3  数据传输方式 231

9.2  计算机网络 232

9.2.1  计算机网络的起源 232

9.2.2  计算机网络定义 234

9.2.3  计算机网络的主要部件 235

9.2.4  计算机网络的传输媒体 235

9.2.5  计算机网络的分类 238

9.2.6  计算机网络拓扑结构 240

9.2.7  计算机网络的体系结构 242

9.2.8  计算机网络间的互联 245

9.3  Internet和TCP/IP协议 246

9.3.1  Internet的起源及发展 246

9.3.2  TCP/IP协议 247

9.3.3  IP地址 248

9.3.4  Internet提供的主要服务 249

9.3.5  Intranet 252

9.4  网络管理 252

9.4.1  网络管理基础 252

9.4.2  网络管理功能 254

9.4.3  Internet的管理信息库 256

9.4.4  网络管理协议 257

9.4.5  网络管理发展方向 257

9.5  移动通信与无线上网 259

9.6  网络安全机制 259

9.6.1  网络安全的基本问题 259

9.6.2  网络安全的内容 260

9.6.3  数据加密技术 261

9.6.4  防病毒技术 262

9.6.5  防火墙技术 263

9.7  网格计算 264

9.8  云计算与物联网 265

本章小结 268

习题 268

第10章  图形学和可视化计算 271

10.1  计算机图形学 271

10.1.1  计算机图形信息的处理 271

10.1.2  计算机图形学的起源 272

10.1.3  计算机图形学主要研究的

内容 272

10.1.4  计算机图形学的应用 273

10.1.5  计算机图形的标准化 274

10.2  图形系统 275

10.3  计算机视觉和可视化 277

10.3.1  人的视觉 277

10.3.2  计算机视觉 277

10.3.3  可视化 277

10.4  图形用户界面 278

10.5  图像通信 278

10.6  几何建模 279

10.7  计算机动画 279

10.8  虚拟现实 279

10.9  3D打印 280

本章小结 281

习题 281

第11章  人机交互 283

11.1  人机交互 283

11.1.1  人机交互技术 283

11.1.2  人机交互模型 284

11.1.3  人机系统交互界面的构架 285

11.1.4  人机界面的设计 287

11.1.5  数据交互 289

11.1.6  语音交互 290

11.1.7  图像交互 290

11.1.8  行为交互 291

11.2  多媒体技术 291

11.2.1  多媒体 291

11.2.2  多媒体关键技术 292

11.2.3  多媒体技术的应用 294

本章小结 295

习题 295

第12章  离散结构 297

12.1  离散结构的研究对象及主要内容 297

12.1.1  离散结构的研究对象 297

12.1.2  离散结构研究的主要内容 297

12.2  数理逻辑 298

12.2.1  命题逻辑 298

12.2.2  谓词逻辑 302

12.3  集合论 304

12.3.1  集合的基本概念与运算 304

12.3.2  关系与函数 306

12.4  代数结构 310

12.4.1  代数结构概述 310

12.4.2  格与布尔代数 312

12.5  图论 313

12.5.1  图的基本概念 313

12.5.2  路径、回路及连通性 315

12.5.3  图的矩阵表示 315

12.6  离散概率 317

本章小结 317

习题 318

第13章  数值计算科学 321

13.1  高性能计算 321

13.2  数值分析 322

13.3  运筹学 323

13.4  数学建模与计算机模拟 324

本章小结 325

习题 325

第14章  智能系统 327

14.1  人工智能系统 327

14.1.1  人工智能 327

14.1.2  人工智能的主要学派 328

14.1.3  人工智能的研究与应用

领域 329

14.2  知识表示及推理 332

14.2.1  知识与知识表示 332

14.2.2  经典推理技术 332

14.2.3  高级知识推理技术 334

14.3  搜索技术 336

14.3.1  一般搜索技术 336

14.3.2  高级搜索技术 338

14.4  自然语言处理 339

14.4.1  语言及其理解 339

14.4.2  句法和语义的分析 340

14.4.3  机器翻译 341

14.5  智能计算 341

14.5.1  智能计算 341

14.5.2  遗传算法 342

14.5.3  集群智能 342

14.5.4  人工神经网络 343

14.6  机器学习 344

14.6.1  机器学习的基本概念 344

14.6.2  机器学习的发展过程 345

14.6.3  机器学习的主要研究方向 345

14.6.4  机器学习策略 346

14.6.5  机器学习方法 346

本章小结 348

习题 348

第15章  社会和职业问题 350

15.1  计算的社会背景 350

15.2  计算机与道德 351

15.2.1  道德的哲学含义 351

15.2.2  道德选择 351

15.2.3  道德评价 351

15.2.4  计算机专业人员的职业

道德准则 352

15.2.5  计算机用户的道德 352

15.3  基于计算机系统的风险与责任 353

15.4  知识产权 354

15.5  隐私与公民自由 356

15.6  计算机犯罪 357

15.7  团队合作 359

15.8  哲学框架 360

本章小结 361

习题 361

参考文献 363