内容简介
《计算机科学导论——计算思维视角》以扩展的计算思维为主线,融入课程思政,理论与应用相结合,参照中国计算机学会、国际计算机协会以及美国电气与电子工程师协会的计算学科定义和建议,对计算机科学与技术进行科学、系统地阐述。《计算机科学导论——计算思维视角》共7篇14章,从计算思维涉及的逻辑思维、系统思维、算法思维、网络思维、数据思维和智能思维六个方面展开,具体阐述计算机科学相关定义,社会与道德问题,数的表示、存储与运算,数字逻辑与数字系统,计算机硬件,计算机软件,高级程序设计基础,数据结构与算法,计算机网络,移动通信与无线网络,数据库系统,大数据技术,机器学习和人工智能14个专题知识,目的是让读者了解计算机科学与技术学科的全貌,并对计算思维有深刻的认知。
目录
目录
**篇 计算机科学总论
第1章 计算机科学概述 3
1.1 引言 3
1.1.1 计算机科学的定义 3
1.1.2 图灵模型和冯?诺依曼模型 8
1.1.3 计算机系统组成 11
1.2 计算思维和计算机科学 15
1.2.1 逻辑思维 16
1.2.2 系统思维 17
1.2.3 算法思维 19
1.2.4 网络思维 20
1.2.5 数据思维 22
1.2.6 智能思维 25
1.3 计算机的发展历程 27
1.4 计算机科学与技术学科知识体系 31
1.5 计算机的应用与发展趋势 34
1.6 本章小结 37
第2章 社会与道德问题 39
2.1 道德原则 39
2.2 知识产权 43
2.3 隐私保护 46
2.4 计算机犯罪 49
第二篇 数理逻辑思维基础
第3章 数的表示、存储与运算 55
3.1 计算机数据组织简介 55
3.2 数的表示及进制转换 56
3.2.1 数的表示 56
3.2.2 进制转换 58
3.3 数的码制 60
3.3.1 原码 61
3.3.2 反码 61
3.3.3 补码 62
3.4 定点数和浮点数 65
3.4.1 定点数 65
3.4.2 浮点数 66
3.4.3 二进制小数 66
3.4.4 IEEE浮点表示 68
3.5 十进制数的编码 70
3.5.1 有权码 70
3.5.2 无权码 70
3.6 数的存储 71
3.6.1 数字存储 72
3.6.2 文本存储 74
3.6.3 音频存储 76
3.6.4 图像存储 77
3.7 数据运算 81
3.7.1 移位运算 81
3.7.2 算术运算 84
第4章 数字逻辑与数字系统 89
4.1 基本逻辑关系 89
4.2 逻辑函数 89
4.2.1 基本逻辑运算 89
4.2.2 逻辑函数基本定理 91
4.2.3 逻辑函数基本运算规则 92
4.3 逻辑函数标准型 93
4.3.1 逻辑函数的两种标准形式 94
4.3.2 将逻辑函数化为标准型 95
第三篇 计算机系统(系统思维)
第5章 计算机硬件 101
5.1 引言 101
5.2 冯?诺依曼模型 101
5.2.1 五个部件 102
5.2.2 存储的程序概念 103
5.2.3 指令的顺序执行 103
5.3 中央处理单元 104
5.3.1 算术逻辑单元 104
5.3.2 寄存器组 105
5.3.3 控制单元 105
5.4 分层存储体系 105
5.4.1 地址空间 106
5.4.2 存储器的类型 106
5.4.3 存储器的层次结构 107
5.4.4 高速缓冲存储器 108
5.5 输入/输出系统 109
5.5.1 非存储设备 109
5.5.2 存储设备 111
5.6 计算机硬件扩展技术 114
5.6.1 多核技术 114
5.6.2 高性能计算机 115
5.6.3 并行计算机 116
5.6.4 分布式系统 118
第6章 计算机软件 120
6.1 引言 120
6.2 操作系统基本概念 121
6.2.1 操作系统的目标 122
6.2.2 操作系统的作用 123
6.2.3 推动操作系统发展的主要动力 124
6.3 操作系统的发展历程 126
6.3.1 未配置操作系统的计算机系统 126
6.3.2 单道批处理系统 127
6.3.3 多道批处理系统 129
6.3.4 分时系统 130
6.3.5 实时系统 132
6.3.6 微机操作系统的发展 133
6.4 操作系统的组成 135
6.4.1 并发 136
6.4.2 共享 136
6.4.3 虚拟 137
6.4.4 异步 139
6.5 操作系统的功能 139
6.5.1 处理机管理功能 139
6.5.2 存储器管理功能 141
6.5.3 设备管理功能 142
6.5.4 文件管理功能 143
6.5.5 操作系统与用户之间的接口 144
6.5.6 现代操作系统的新功能 145
6.6 主流操作系统 146
6.6.1 UNIX 146
6.6.2 Linux 148
6.6.3 Windows 149
6.6.4 Mac OS 150
6.7 计算机软件设计方法 152
6.7.1 软件工程基本概念 152
6.7.2 软件开发模型 154
6.7.3 软件开发步骤 161
第四篇 程序基础及算法(算法思维)
第7章 高级程序设计基础 167
7.1 程序设计简介 167
7.1.1 程序设计范型 167
7.1.2 程序设计语言 169
7.1.3 程序设计步骤 171
7.2 程序的编译过程 171
7.2.1 源程序、目标程序和可执行程序的概念 171
7.2.2 程序开发步骤 172
7.3 数据的组织结构 173
7.3.1 基本数据类型 174
7.3.2 运算符和表达式 175
7.3.3 数组 180
7.3.4 指针 185
7.3.5 结构体与共用体 188
7.4 程序的组织结构 191
7.4.1 顺序结构 191
7.4.2 选择结构 192
7.4.3 循环结构 195
7.4.4 函数 197
第8章 数据结构与算法 201
8.1 数据结构简介 201
8.2 三大基本数据结构 204
<
试读
**篇 计算机科学总论
1.中国**个计算机科研组的诞生
早在1947~1948年,华罗庚在美国普林斯顿大学高级研究院担任访问研究员,和冯?诺依曼等人交往甚密。华罗庚在数学上的造诣和成就受到冯?诺依曼的赞赏。当时,冯?诺依曼正在设计世界上**台存储程序的通用电子数字计算机,他让华罗庚参观他的实验室,并和华罗庚讨论有关学术问题,华罗庚心里开始盘算着回国后也要在中国开展电子计算机的工作。回国后,华罗庚在清华大学任教,并参与中国科学院数学研究所的筹建,1952年被任命为中国科学院数学研究所所长。在华罗庚领导下的数学研究所不但开展了纯数学的各个分支的研究,还开展了力学、理论物理和数理逻辑的研究,特别是华罗庚念念不忘要开展电子计算机的研究。华罗庚不愧是一位有远见的科学家,当很多人还不知道计算机为何物时,他已经意识到了计算技术是科学发展的新的生长点,并积极倡导和主持这方面的工作。
1952年,全国高等学校院系调整,华罗庚在清华大学电机系挑选了闵乃大、夏培肃和王传英三个人去数学研究所研究电子计算机,组建了我国**个计算机科研组。华罗庚布置的*要任务就是要设计和研制中国自己的电子计算机。这个计算机科研组在华罗庚的领导和支持下,逐渐成长和壮大起来,成为一个具有活力和有能力承担重担的科研组。
2.中国**个计算技术研究所的筹备
1956年6月19日,华罗庚被任命为中国科学院计算技术研究所筹备委员会主任。华罗庚以极大的热情投入到计算技术研究所的筹备工作中。虽然那时他也担任数学研究所的所长,但他的时间和精力主要花在计算技术研究所的筹备工作上,他千方百计地落实规划所规定的各项任务。华罗庚还在数学研究所动员研究纯粹数学的人改行,去计算技术研究所工作。在他的号召下,冯康、许孔时、魏道政等自愿来到了计算技术研究所工作。
当时的计算技术研究所是全国在计算技术方面唯一的科研单位,到1956年底,已集中了314人,华罗庚很好地协调了各合作单位之间的关系以及各单位人和人之间的关系,使研究所在筹备期间就成为一个团结奋进、朝气蓬勃的集体。
3.中国**台计算机的诞生
中国**代女性计算机科学家—夏培肃院士在近代物理研究所工作期间,对串行计算机的运算器所执行的四则运算的算法进行了比较深入的研究,初步完成运算器和控制器的逻辑设计,并完成一些基本电路实验。1958年,计算技术研究所提出要研制一台小型计算机,交由夏培肃负责,该计算机被命名为107计算机。
夏培肃负责107计算机的总体设计、逻辑设计、工程设计和可靠性设计。107计算机是一台小型的串行通用电子管数字计算机,采用冯?诺依曼体系结构,磁芯存储器。机器可执行16种操作:接收、发送、接收反码、逻辑加、逻辑乘、移位、加法、溢出不停机的加法、减法、乘法、除法、无条件转移、条件转移、非零转移、打印、停机。这是我国**台自行设计的通用电子数字计算机。该计算机工作很稳定,1960年4月机器考试时,连续无故障工作时间为20小时30分钟。
107计算机在计算所加工调试后,安装在中国科学技术大学。中国科学技术大学结合107计算机,编写了计算机原理和程序设计的讲义,作为该校计算机专业、力学系、自动化系、地球物理系的教材,共有600多名学生在107计算机上算题。107计算机除了为教学服务外,还接受了一些外单位的计算任务,它们包括潮汐预报计算、原子反应堆射线能量分布计算、原子核结构理论中的矩阵特征值及特征向量计算等数十项计算课题。
107计算机研制成功的意义不仅仅在于它是我国**台自行研制的通用电子数字计算机,更重要的是它说明了中国人有能力、有志气设计和研制自己的计算机。
第1章 计算机科学概述
从世界上**台电子计算机诞生至今,计算机以超常规发展的速度,让人们的学习和生活发生了根本性的改变,以计算机为基础的应用渗透到人们生活的方方面面。计算机的出现不仅提高了人们的工作效率,也使教育、商业、娱乐等诸多传统领域发生了巨大变革,更促进了信息和知识的传递,加速了人们进入信息时代和智能时代的步伐,当今的计算机已成为人类社会不可分割的一部分。本章*先对计算机科学的相关模型和概念进行介绍,其次分析计算思维和计算机科学的关系,然后介绍计算机的发展历程,*后给出计算机科学与技术学科的知识体系、应用领域和发展趋势。
1.1 引 言
本节的主要目的是介绍计算机科学的定义、图灵模型和冯?诺依曼模型、计算机系统的组成,为后续章节的学习做一个简单的铺垫。
1.1.1 计算机科学的定义
计算机科学是一门研究信息转换过程的设计、分析、实现、效率及应用的学问。构成所有计算机科学的基本问题是“什么可以自动化”。计算机科学伴随着存储程序电子计算机的发明,于20世纪40年代中期应运而生,并且自那以后发展迅速。
计算机科学