前 言
欢迎学习计算机科学概论课程。这将是一次美妙和激动人心的探索,可能为你今后从事的充满挑战和令人兴奋的IT职业奠定基础。众所周知,计算机在我们的日常生活中扮演了一个重要的角色,而且在未来也将一样。
计算机科学是一个充满了挑战和发展机遇的年轻学科,而计算机科学概论课程则是这门学科的重要基础。随着计算机在各行各业的广泛应用,很多非计算机专业也把计算机科学概论课程列为公共基础课之一。
既然是作为基础课的教材,那么本书所假定的读者可以既没有计算机应用经验,也不具备太多的计算机知识。即使是对计算机一无所知的人,也能通过学习本书而获取大量计算机科学的基本知识;如果读者已有一定的计算机应用经验那就更好,他将在本书中发现很多有用的理论知识,以提高自己的专业水平。
作为IT专业基础课教材,本书力求做到:知识体系完整,覆盖面广,内容翔实,文风严谨,深入浅出,并符合国内高校的教学实践需要。同时,本书紧跟时代,还介绍了一些计算机科学的最新发展和应用,如移动操作系统、云计算、物联网等。
最重要的一点,本教材在吸收国内同类课程教学改革经验的基础上,遵循CC2005课程体系,大胆参考了ACM推荐的CS0、CS1、CS2课程设计,与国际IT教材接轨,使其从广度上覆盖了计算机科学的主要领域。
本书结构
本书是为计算机概论/导论课程编写的。该课程将为计算机及其相关专业的本科生勾画出计算机科学体系的框架,为有志于IT行业的学生奠定计算机科学知识的基础,架设进一步深入学习专业理论的桥梁。本书强调的是概念而不是数学模型和技术细节,并通过大量的图片、表格和演示增强读者对阅读的理解和知识的掌握,通过范例讲解概念和相关的模型,通过关键字索引、小结和习题帮助读者掌握自己的学习效果。
本书分为11章,各章的主要内容如下:
● 第0章 绪论 本章从整体上介绍计算机科学的概念和内涵。概要介绍计算机的发展历史,并分析计算机对现代社会的影响。
● 第1章 数据的表示与编码 数据是计算机处理的基本元素,本章讨论数据的表示和运算,以及不同数据类型的编码和存储。
● 第2章 计算机体系结构 本章重点讨论计算机的体系结构。先从系统的角度介绍了计算机系统的层次结构,然后从体系结构的角度分析了系统硬件的结构并重点讨论了处理器结构,最后介绍了计算机软件系统的结构。
● 第3章 计算机硬件组成 本章讨论计算机硬件系统组成,讲述计算机主要硬件组成部分的原理、结构、实现和发展趋势,并讨论当前主流计算机的常用硬件。
● 第4章 数据结构与算法 本章讲解了数据结构和算法的概念,以及算法的描述方法和基本结构,并讨论了几种常见的数据结构和常用算法。
● 第5章 操作系统 本章讨论计算机的操作系统,阐述操作系统的功能、基本组成和运行原理。
● 第6章 程序设计语言 本章讲述了计算机程序设计语言的发展和分类,介绍程序设计语言的类型和基本知识,讨论了程序编译生成的过程和原理。
● 第7章 数据库技术与应用 本章讨论运用数据库方式管理大量数据的方法。着重阐述数据库方法的基本概念、原理,结合关系数据库介绍了SQL基本情况,介绍了数据挖掘技术和数据仓库的基本原理。
● 第8章 软件工程 本章讨论规模化软件开发的方法。包括软件过程、需求分析、软件工程方法、软件质量管理、软件项目管理等内容。
● 第9章 计算机网络 本章从计算机网络的形成与发展开始,依次讲述了计算机网络体系结构、组建网络和Internet基本技术及应用。
● 第10章 信息系统安全 本章从计算机网络信息系统的安全威胁入手,依次讲述了信息安全的核心——数据加密、最常见的安全威胁——计算机病毒、最常见的网络信息安全技术——防火墙和入侵检测。
尽管本书包含了以上章节内容,但实际的教学进度和授课内容可以灵活确定,因为这要取决于课堂教学的安排或读者实际技能及对所讨论问题的熟悉程度。教学时数建议安排在40~60课时之间。
目 录
第0章 绪论
0.1 什么是计算机科学
0.1.1 计算机科学的提出
0.1.2 计算机科学领域
0.1.3 计算机与计算机模型
0.1.4 计算机科学中的经典问题
0.2 计算机的历史
0.2.1 计算机前传
0.2.2 电子计算机
0.2.3 计算机的未来
0.3 计算机与社会
0.3.1 计算机与生活
0.3.2 有关计算机的伦理
0.3.3 与计算机有关的犯罪
0.4 我国计算机科学的发展
本章小结
本章习题
第1章 数据的表示与编码
1.1 数和数制
1.1.1 数字系统
1.1.2 计数与进制
1.1.3 二进制和位
1.1.4 八进制和十六进制
1.1.5 不同进制间的相互转换
1.2 数值的表示与运算
1.2.1 整数的表示
1.2.2 实数的表示
1.2.3 位的算术运算
1.3 非数值信息的编码
1.3.1 字符的编码
1.3.2 静态图像的编码
1.3.3 动态数据的编码
本章小结
本章习题
第2章 计算机体系结构
2.1 计算机系统的多级层次结构
2.2 计算机体系结构概述
2.2.1 计算机体系结构的基本概念
2.2.2 相关概念
2.3 冯?诺依曼结构和哈佛结构
2.3.1 冯?诺依曼理论
2.3.2 冯?诺依曼体系结构
2.3.3 冯?诺依曼结构的演变
2.3.4 哈佛结构
2.4 处理器体系结构
2.4.1 指令系统
2.4.2 CISC结构
2.4.3 RISC结构
2.4.4 并行处理与流水线技术
2.5 计算机软件系统
2.5.1 软件的含义
2.5.2 软件系统的组织
2.5.3 软件的社会形态
本章小结
本章习题