第1章 计算机系统基础知识 1
1.1 计算机系统的基本组成 1
1.2 数据的表示及运算 3
1.2.1 计算机中数据的表示 3
1.2.2 校验码 13
1.2.3 逻辑代数及逻辑运算 17
1.2.4 机器数的运算 19
1.3 计算机的基本组成及工作原理 23
1.3.1 总线的基本概念 23
1.3.2 中央处理单元 25
1.3.3 存储系统 30
1.3.4 输入/输出技术 36
1.4 指令系统简介 40
1.5 多媒体系统简介 44
1.5.1 数字声音 45
1.5.2 图形与图像 48
1.5.3 动画和视频 55
第2章 操作系统基础知识 62
2.1 操作系统概述 62
2.2 进程管理 65
2.2.1 基本概念 65
2.2.2 进程控制 67
2.2.3 进程通信 68
2.2.4 进程调度 72
2.2.5 死锁 74
2.2.6 线程 76
2.3 存储管理 76
2.3.1 基本概念 76
2.3.2 存储管理方案 77
2.3.3 分页存储管理 79
2.3.4 分段存储管理 80
2.3.5 虚拟存储管理 82
2.4 设备管理 85
2.4.1 设备管理概述 85
2.4.2 设备管理技术 86
2.4.3 磁盘调度 88
2.5 文件管理 89
2.5.1 基本概念 89
2.5.2 文件的结构和组织 90
2.5.3 文件目录 92
2.5.4 存取方法、存取控制 93
2.5.5 文件的使用 95
2.5.6 文件的共享和保护 95
2.5.7 系统的安全与可靠性 96
2.6 作业管理 98
2.6.1 作业管理 98
2.6.2 作业调度 99
2.6.3 人机界面 102
第3章 程序设计语言基础知识 104
3.1 程序设计语言概述 104
3.1.1 程序设计语言的基本概念 104
3.1.2 程序设计语言的分类和特点 105
3.1.3 程序设计语言的基本成分 109
3.2 语言处理程序基础 116
3.2.1 汇编程序基础 116
3.2.2 编译程序基础 118
3.2.3 解释程序基础 126
第4章 数据结构与算法 129
4.1 线性结构 129
4.1.1 线性表 129
4.1.2 栈和队列 137
4.1.3 串 143
4.2 数组 144
4.3 树与二叉树 147
4.3.1 树的基本概念 148
4.3.2 二叉树 149
4.3.3 树和森林 153
4.3.4 最优二叉树 156
4.3.5 二叉查找树 157
4.4 图 158
4.5 查找 163
4.5.1 顺序查找与折半查找 164
4.5.2 树表查找 167
4.5.3 哈希表及哈希查找 170
4.6 算法 173
4.6.1 算法概述 173
4.6.2 排序算法 177
4.6.3 递归算法 187
4.6.4 字符串运算 188
4.6.5 图的相关算法 191
第5章 软件工程基础知识 199
5.1 软件工程概述 199
5.1.1 软件生存周期 199
5.1.2 软件生存周期模型 201
5.1.3 软件过程评估 207
5.1.4 软件工具 209
5.1.5 软件开发环境 211
5.2 软件需求分析 212
5.2.1 软件需求的定义 212
5.2.2 软件需求分析的基本任务 213
5.2.3 需求建模 213
5.3 软件设计 214
5.3.1 软件设计的基本任务 214
5.3.2 软件设计原则 216
5.4 结构化分析与设计方法 219
5.4.1 结构化分析方法 219
5.4.2 结构化设计方法 221
5.4.3 结构化程序设计方法 223
5.5 面向对象分析与设计方法 224
5.5.1 面向对象的基本概念 224
5.5.2 面向对象分析与设计 227
5.5.3 UML概述 228
5.5.4 设计模式 232
5.6 软件测试与运行 235
5.6.1 软件测试的目的及原则 235
5.6.2 软件测试方法 238
5.6.3 软件测试过程 241
5.6.4 软件测试设计和管理 242
5.6.5 软件调试 243
5.6.6 软件运行与维护 243
5.7 软件项目管理 245
5.7.1 管理范围 245
5.7.2 成本估算 246
5.7.3 风险分析 247
5.7.4 进度管理 248
5.8 软件质量与软件质量保证 250
5.8.1 软件质量特性 250
5.8.2 软件质量保证 252
第6章 数据库基础知识 254
6.1 基本概念 254
6.1.1 数据库系统 254
6.1.2 数据库管理技术的发展 255
6.1.3 大数据 257
6.2 数据模型 260
6.2.1 数据模型的基本概念 260
6.2.2 数据模型的三要素 261
6.2.3 E-R模型 261
6.2.4 基本的数据模型 265
6.3 DBMS的功能和特征 267
6.3.1 DBMS的功能 267
6.3.2 DBMS的特征与分类 268
6.4 数据库模式 270
6.4.1 模式 270
6.4.2 三级模式两级映像 272
6.5 关系数据库与关系运算 272
6.5.1 关系数据库的基本概念 272
6.5.2 关系数据库模式 275
6.5.3 完整性约束 276
6.5.4 关系代数运算 276
6.6 关系数据库SQL语言简介 280
6.6.1 SQL概述 280
6.6.2 SQL数据定义 281
6.6.3 SQL数据查询 285
6.6.4 SQL数据更新 293
6.6.5 SQL的访问控制 295
6.6.6 嵌入式SQL 296
6.7 数据库设计 297
第7章 网络与信息安全基础知识 300
7.1 计算机网络概述 300
7.1.1 计算机网络的组成 300
7.1.2 计算机网络的分类 301
7.1.3 ISO/OSI参考模型 304
7.2 计算机网络硬件 305
7.2.1 计算机网络互连设备 305
7.2.2 计算机网络传输媒体 311
7.3 TCP/IP 314
7.3.1 TCP/IP模型 314
7.3.2 TCP/IP协议 315
7.3.3 IP地址 318
7.4 Intemet基础知识 322
7.4.1 Intemet服务 322
7.4.2 因特网接入方式 327
7.4.3 TCP/IP的配置 328
7.4.4 浏览器的设置与使用 329
7.5 局域网基础知识 332
7.6 信息安全基础知识 337
7.7 网络安全概述 341
第8章 标准化和知识产权基础知识 346
8.1 标准化基础知识 346
8.1.1 软件工程标准化 346
8.1.2 能力成熟度模型简介 348
8.2 知识产权基础知识 349
8.2.1 基本概念 349
8.2.2 计算机软件著作权 351
8.2.3 计算机软件的商业秘密权 363
第9章 C程序设计 366
9.1 C语言基础 366
9.1.1 数据类型 366
9.1.2 运算符与表达式 372
9.1.3 输入/输出 375
9.2 控制语句 377
9.3 函数 381
9.4 指针 385
9.4.1 指针的定义 385
9.4.2 指针与数组 387
9.4.3 指针与函数 389
9.4.4 指针与链表 393
9.5 常见的C程序错误 395
第10章 C++程序设计 407
10.1 C++程序基础 407
10.1.1 数据类型 407
10.1.2 运算符、表达式和语句 409
10.1.3 基本输入/输出 410
10.1.4 函数 412
10.1.5 类与对象 415
10.2 继承与多态 423
10.3 异常处理 428
10.4 标准库 430
10.4.1 I/O流库 431
10.4.2 string 434
10.4.3 STL 438
10.4.4 vector 443
第11章 Java程序设计 447
11.1 Java语言概述 447
11.2 Java语言基础 448
11.2.1 Java基本数据类型 449
11.2.2 控制结构 455
11.2.3 Java核心类 458
11.3 类与接口 462
11.3.1 类的定义与使用 462
11.3.2 对象的初始化 464
11.3.3 包 466
11.3.4 继承 468
11.3.5 抽象类与接口 471
11.4 异常 478
11.4.1 异常的处理 478
11.4.2 自定义异常 480
11.5 输入、输出和流 483
11.5.1 字节流 483
11.5.2 字符流 486
11.5.3 标准输入/输出流 487
11.6 Java类库的使用 489
11.6.1 基本类型的包装类型 489
11.6.2 泛型和集合类 493