第1章 程序员考试分析 1
1.1程序员考试简介 1
1.1.1考试简介 1
1.1.2考试内容和形式 2
1.1.3适合人群 2
1.2历次考试知识点分布 3
1.2.1上午考试知识点分布 3
1.2.2下午考试知识点分布 8
1.3考试大纲比较分析 10
1.4考试复习要点 10
第2章 计算机硬件基础 12
2.1考点分析 12
2.2计算机组成 13
2.2.1计算机组成部件 13
2.2.2总线和接口 14
2.2.3流水线 16
2.3数据运算 18
2.3.1数据的表示 18
2.3.2各种码制 20
2.3.3奇偶校验码 21
2.3.4海明码 22
2.3.5 CRC码 23
2.3.6 BCD码 24
2.3.7 ASCII码 24
2.3.8汉字的内码 25
2.3.9逻辑运算 26
2.4指令系统 28
2.4.1寻址方式 28
2.4.2指令的执行过程 29
2.5存储体系 30
2.5.1主存储器 30
2.5.2高速缓冲存储器 31
2.5.3磁盘 32
2.6中断与DMA 33
2.6.1程序控制工作方式 33
2.6.2中断工作方式 34
2.6.3 DMA工作方式 35
2.7性能评估 36
2.7.1可靠性相关概念 37
2.7.2可靠性计算 37
2.7.3容错 39
2.7.4指令周期 40
第3章 数据结构与算法 42
3.1考点分析 42
3.2基本概念 43
3.2.1数据结构 43
3.2.2算法 43
3.2.3递归法 45
3.3线性表 46
3.3.1线性表的存储 46
3.3.2线性表的基本操作 47
3.3.3栈 48
3.3.4队列 50
3.3.5链表 51
3.3.6字符串 53
3.3.7二维数组 54
3.4二叉树 55
3.4.1二叉树的性质 55
3.4.2二叉树的遍历 57
3.4.3二叉排序树 58
3.5排序 59
3.5.1插入排序 59
3.5.2选择排序 60
3.5.3交换排序 61
3.5.4归并排序 63
3.5.5基数排序 64
3.5.6排序算法的比较 65
3.6查找 66
3.6.1二分法查找 66
3.6.2散列表 68
3.7图 69
3.7.1图的基本概念 69
3.7.2图的存储结构 70
3.7.3图的遍历 71
第4章 操作系统 72
4.1考点分析 72
4.2基本概念 73
4.2.1操作系统的基本概念 73
4.2.2 Shell程序 76
4.3进程管理 77
4.3.1进程的状态 77
4.3.2信号量与PV操作 81
4.3.3死锁问题 83
4.4存储管理 85
4.4.1虚拟存储器的分类 85
4.4.2局部性原理 87
4.4.3虚存管理 88
4.5作业管理 89
4.5.1作业的状态 89
4.5.2处理机调度 90
4.5.3作业调度算法 90
4.6设备管理 91
4.6.1设备管理的功能 91
4.6.2设备驱动程序 92
4.6.3虚拟设备 92
第5章 程序设计语言 94
5.1考点分析 94
5.2基本概念 95
5.2.1编译系统基础 95
5.2.2解释系统基础 96
5.3语言的分类 97
5.4控制结构 99
5.4.1常量与变量 99
5.4.2三种控制结构 100
5.4.3函数调用 102
5.5正规式 104
第6章 计算机网络 106
6.1考点分析 106
6.2网络体系结构 107
6.2.1网络拓扑结构 107
6.2.2 OSI参考模型 110
6.2.3网络分类 113
6.2.4 IP地址和子网掩码 115
6.3 TCP/IP协议族 117
6.3.1应用层 117
6.3.2传输层 120
6.3.3网际层 120
6.3.4网络接口层 122
6.3.5端口 122
6.4传输介质与设备 122
6.4.1传输介质 123
6.4.2网络设备 125
6.5网络管理 127
6.5.1代理服务器 127
6.5.2网络管理工具 128
6.5.3网络故障检测 129
6.6网络应用 130
6.6.1电子政务 130
6.6.2电子商务 131
6.6.3万维网 132
6.6.4电子邮件 133
6.6.5 DNS 133
6.6.6 IIS 134
6.6.7 VOD 135
6.6.8网络会议 137
第7章 数据库系统 138
7.1考点分析 138
7.2基本概念 139
7.2.1数据库系统的三级模式 139
7.2.2数据模型的分类 141
7.2.3关系模型 141
7.3关系代数 143
7.3.1集合运算 143
7.3.2关系运算 145
7.4 SQL语言 147
7.4.1基本表操作 147
7.4.2视图操作 152
7.4.3完整性约束 153
7.5数据库设计 157
7.5.1函数依赖 157
7.5.2范式 159
7.5.3最小依赖集 159
7.5.4 E-R图的画法 160
7.5.5 E-R图的集成 161
7.5.6 E-R图向关系模式的转换 163
第8章 系统开发和运行维护 165
8.1考点分析 165
8.2系统开发模型 166
8.2.1开发生命周期模型 166
8.2.2系统开发方法论 175
8.2.3软件开发环境 177
8.3需求分析 177
8.3.1需求分析概述 177
8.3.2数据流图 179
8.3.3数据字典 183
8.4软件设计 185
8.4.1软件设计阶段 185
8.4.2软件设计活动 186
8.4.3结构化设计 187
8.4.4过程设计 189
8.4.5软件界面设计 192
8.5程序编写 193
8.5.1程序设计风格 193
8.5.2程序效率 197
8.5.3程序设计试题 198
8.6软件测试 200
8.6.1测试的目的 200
8.6.2测试的类型 200
8.6.3测试的阶段 204
8.6.4性能测试 206
8.7软件维护 207
8.8项目管理 208
8.8.1软件项目估算 208
8.8.2进度计划与监控 209
8.8.3质量管理 210
8.8.4软件过程改进 211
8.8.5软件文档 214
第9章 面向对象方法 217
9.1考点分析 217
9.2面向对象语言 217
9.2.1类和对象 218
9.2.2封装和消息 219
9.2.3多态性 220
9.3统一建模语言 222
9.3.1 UML的结构 222
9.3.2 UML的图形 223
9.3.3用例之间的关系 230
9.3.4类之间的关系 231
第10章 多媒体基础 234
10.1考点分析 234
10.2多媒体基础 235
10.2.1多媒体计算机 235
10.2.2媒体的分类 235
10.2.3存储媒体 236
10.3压缩编码技术 236
10.3.1数据压缩的基础 237
10.3.2数据压缩技术的分类 238
10.3.3数据压缩标准 238
10.4音频数据 239
10.4.1音频技术概述 240
10.4.2音频数据存储和传输 240
10.4.3音频数据格式 241
10.5颜色空间 241
10.5.1亮度、色调和饱和度 242
10.5.2颜色空间 242
10.5.3图形与图像 244
10.6视频数据 246
10.6.1视频文件格式 247
10.6.2流媒体 248
第11章 安全性知识 250
11.1考点分析 250
11.2密钥技术 250
11.2.1数据加密技术 251
11.2.2认证技术 252
11.2.3数字证书 253
11.3安全体系 254
11.3.1防火墙 255
11.3.2入侵检测 256
11.3.3病毒和木马扫描 257
11.3.4安全扫描 258
11.3.5日志审计系统 259
11.3.6公共密钥基础设施 259
11.4网络攻击 260
11.4.1网络攻击的类型 261
11.4.2常见的网络攻击 261
第12章 标准化知识 265
12.1考点分析 265
12.2标准化法 265
12.2.1标准的制定 266
12.2.2标准的表示 267
12.3 ISO 9000标准族 268
第13章 知识产权知识 269
13.1考点分析 269
13.2专利法 270
13.2.1专利法的保护对象 270
13.2.2确定专利权人 270
13.2.3专利权 271
13.3著作权法 272
13.3.1著作权法客体 272
13.3.2著作权法主体 272
13.3.3著作权 273
13.4计算机软件保护条例 274
13.4.1保护对象 275
13.4.2著作权人确定 275
13.4.3软件著作权 275
13.4.4法律责任 276
13.5反不正当竞争法 277
13.5.1什么是不正当竞争 277
13.5.2法律责任 278
13.5.3商业秘密 278
13.6商标法及实施条例 279
13.6.1商标注册的申请 279
13.6.2注册商标的变更 280
13.6.3注册商标专用权的保护 281
第14章 计算机应用知识 282
14.1考点分析 282
14.2 Windows基本操作 283
14.2.1公共操作 283
14.2.2文件操作 283
14.3 Word基本操作 285
14.3.1工具栏图标按钮 286
14.3.2其他功能 288
14.4 Excel基本操作 290
14.5上网基础操作 292
14.5.1 IE的使用 292
14.5.2 Outlook的使用 294
14.5.3系统安全措施 296
2008年5月程序员考试试题分析与解答 297
主要参考文献 349