标题：程序员教程（第三版）（修订版）
图书信息
作者：张淑平 图书详细信息：ISBN：9787302266600定价：49元印次：1-4装帧：平装印刷日期：2012-8-31
图书简介
本书作为初级职称的软考指定教材，具有比较权威的指导意义。本书根据《程序员考试大纲》的重点内容，阐述了共12章的内容，考生在学习教材内容的同时，还须对照考试大纲（2009版），认真学习和复习大纲的知识点。　本书是在《程序员考试大纲》的指导下，对《程序员教程（第三版）》进行修订后完成的。　本书适合参加本考试的考生和大学在校生作为教材。
图书前言
全国计算机技术与软件专业技术资格（水平）考试实施至今已经历了二十余年，在社会上产生了很大的影响，对我国软件产业的形成和发展做出了重要的贡献。为了适应我国计算机信息技术发展的需求，人力资源和社会保障部、工业和信息产业部决定将考试的级别拓展到计算机信息技术行业的各个方面，以满足社会上对各种计算机信息技术人才的需要。　编者受全国计算机专业技术资格考试办公室委托，对《程序员教程（第三版）》一书进行修订，以适应新的考试大纲要求。在考试大纲中，要求考生掌握的知识面很广，每个章节的内容都能构成相关领域的一门课程，因此编写的难度很高。考虑到参加考试的人员已有一定的基础，所以本书中只对考试大纲中所涉及到的知识领域的要点加以阐述，但限于篇幅所限，不能详细地展开，请读者谅解。　全书共分12章，各章节内容安排如下：　第1章 计算机系统基础知识。主要介绍数据在计算机中的表示和运算、校验码基础知识、计算机硬件和指令系统基础知识。　第2章 操作系统基础知识。主要介绍操作系统的类型和功能等基本概念，进程管理、存储管理、设备管理、文件管理和作业管理等基础知识。　第3章 数据库基础知识。主要介绍数据库管理系统的主要功能和特征、数据库模式、数据模型和ER图、关系运算和SQL等基础知识。　第4章 多媒体基础知识。主要介绍多媒体的基本概念、音频、图形和图像、动画和视频、超文本与超媒体、流媒体等基础知识，以及常见的声音、图形图像、视频文件格式及命名方式。　第5章 网络基础知识。主要介绍网络的功能、分类、组成和拓扑结构，基本的网络协议与标准，常用网络设备与网络通信设备的作用和特点、Client/Server结构和Browser/Server结构的基本概念和特点、局域网（LAN）和互联网（Internet）基础知识。　第6章 程序语言基础知识。主要介绍程序语言的类型和特点、程序语言的基本成分以及编译、解释等基本的语言翻译基础知识。　第7章 软件工程基础知识。主要介绍软件工程和项目管理基础、面向对象技术、软件需求分析、软件设计、编码和测试、软件系统运行与维护、软件质量管理与质量保证等基础知识。　第8章 数据结构与算法。主要介绍线性表和链表、栈、队列、数组、树、图等基本数据结构，以及查找、排序等常用算法。　第9章 标准化和知识产权基础知识。主要介绍标准化的基本概念，标准分类、标准的代号及编号等方面的基础知识；知识产权的概念与特点、计算机软件著作权等方面的基础知识。　第10章 安全性基础知识。主要介绍计算机病毒、网络安全、访问控制和加解密基础 知识。　第11章 C/C++程序设计。主要介绍C/C++程序基础、类与对象、继承与多态、输入与输出流库、异常处理和常用STL模板库，以及C程序中常见的问题和错误。　第12章 Java语言程序设计。主要介绍Java程序语言基础和特点、类与接口、异常、文件和输入输出流、Java小应用程序和Java类库等基础知识。　本书第1章由张淑平编写，第2章、第3章由王亚平编写，第4章由刘强编写，第5章由严体华编写，第6章由张淑平编写，第7章由褚华、霍秋艳编写，第8章由张淑平、陈静玉编写，第9章由刘强编写，第10章由严体华、张淑平编写，第11章、第12章由胡圣明编写，最后由张淑平、霍秋艳统稿。　在本书的编写过程中，参考了许多相关的书籍和资料，编者在此对这些参考文献的作者表示感谢。同时感谢清华大学出版社在本书出版过程中所给予的支持和帮助。　因水平有限，书中难免存在错漏和不妥之处，望读者指正，以利改进和提高。　　 编 者　 2011年6月
图书目录
第1章 计算机系统基础知识 11.1 计算机系统的基本组成 11.2 计算机中数据的表示及运算 31.2.1 计算机中数据的表示 31.2.2 校验码 121.2.3 逻辑代数及逻辑运算 161.2.4 机器数的运算 181.3 计算机的基本组成及工作原理 211.3.1 总线的基本概念 211.3.2 中央处理单元 231.3.3 存储系统 271.3.4 输入/输出技术 331.4 指令系统简介 37第2章 操作系统基础知识 422.1 操作系统概述 422.2 处理机管理 452.2.1 基本概念 452.2.2 进程控制 472.2.3 进程通信 482.2.4 进程调度 522.2.5 死锁 542.2.6 线程 552.3 存储管理 562.3.1 基本概念 562.3.2 存储管理方案 572.3.3 分页存储管理 592.3.4 分段存储管理 602.3.5 虚拟存储管理 622.4 设备管理 652.4.1 设备管理概述 652.4.2 设备管理技术 662.4.3 磁盘调度 682.5 文件管理 692.5.1 基本概念 692.5.2 文件的结构和组织 702.5.3 文件目录 722.5.4 存取方法、存取控制 732.5.5 文件的使用 752.5.6 文件的共享和保护 752.5.7 系统的安全与可靠性 772.6 作业管理 782.6.1 作业管理 782.6.2 作业调度 792.6.3 人机界面 82第3章 数据库基础知识 843.1 基本概念 843.1.1 数据库系统 843.1.2 数据库管理技术的发展 853.2 数据模型 873.2.1 数据模型的基本概念 873.2.2 数据模型的三要素 883.2.3 E-R模型 883.2.4 基本的数据模型 923.3 DBMS的功能和特征 953.3.1 DBMS的功能 953.3.2 DBMS的特征与分类 963.4 数据库模式 983.4.1 模式 983.4.2 三级模式两级映像 1003.5 关系数据库与关系运算 1003.5.1 关系数据库的基本概念 1003.5.2 关系数据库模式 1033.5.3 完整性约束 1033.5.4 关系代数运算 1043.6 关系数据库SQL语言简介 1083.6.1 SQL概述 1083.6.2 SQL数据定义 1093.6.3 SQL数据查询 1133.6.4 SQL数据更新 1213.6.5 SQL的访问控制 1233.6.6 嵌入式SQL 1243.7 数据库设计 125第4章 多媒体基础知识 1284.1 多媒体的基本概念 1284.1.1 媒体的分类和特征 1284.1.2 多媒体计算机系统 1294.2 音频 1344.2.1 数字声音基础 1344.2.2 声音文件格式 1414.3 图形和图像 1424.3.1 图像的基础知识 1424.3.2 图形与图像信息的表示和获取 1444.3.3 图形图像文件格式 1474.4 动画和视频 1504.4.1 动画的基本概念 1504.4.2 模拟视频和数字视频 1524.4.3 视频文件格式 1574.5 多媒体网络 1584.5.1 超文本与超媒体 1584.5.2 流媒体的基本概念 159第5章 网络基础知识 1615.1 计算机网络概述 1615.1.1 计算机网络的组成 1615.1.2 计算机网络的分类 1625.2 计算机网络硬件 1665.2.1 计算机网络互连设备 1665.2.2 计算机网络传输媒体 1715.3 TCP/IP协议体系结构 1755.3.1 OSI/ISO参考模型与TCP/IP体系结构 1755.3.2 TCP/IP协议 1775.3.3 IP地址 1805.4 Internet基础知识 1845.4.1 Internet服务 1845.4.2 因特网接入方式 1885.4.3 TCP/IP的配置 1905.4.4 浏览器的设置与使用 1915.4.5 防火墙技术 1945.4.6 Client/Server结构和Browser/Server结构 1995.5 局域网基础 201第6章 程序语言基础知识 2066.1 程序语言基础知识 2066.1.1 程序语言的基本概念 2066.1.2 程序设计语言的分类和特点 2076.1.3 程序语言的基本成分 2106.2 语言处理程序基础 2176.2.1 汇编程序基本原理 2176.2.2 编译程序基本原理 2196.2.3 解释程序基本原理 227第7章 软件工程基础知识 2307.1 软件工程和项目管理基础 2307.1.1 软件工程概述与软件生存周期 2307.1.2 软件开发项目管理基础知识 2317.1.3 工具与软件开发环境 2357.1.4 软件过程能力评估 2377.2 面向对象技术基础 2407.2.1 面向对象的基本概念 2407.2.2 面向对象分析与设计基本概念 2437.3 软件需求分析 2447.3.1 软件需求分析的基本任务 2447.3.2 结构化分析方法 2457.4 软件设计 2477.4.1 软件概要设计的基本任务 2477.4.2 软件设计的基本原理 2487.4.3 软件结构优化准则 2507.4.4 结构化设计方法 2517.4.5 软件详细设计 2527.5 软件编码 2567.5.1 程序设计方法与语言 2567.5.2 程序设计风格 2597.6 软件测试 2617.6.1 软件测试的目的及原则 2617.6.2 软件测试方法 2637.6.3 软件测试对象和过程 2667.6.4 软件测试设计和管理 2677.6.5 软件调试 2687.7 系统运行与维护 2687.8 软件质量管理与质量保证 270第8章 数据结构与算法 2748.1 线性结构 2748.1.1 线性表 2748.1.2 栈和队列 2818.1.3 串 2878.2 数组和矩阵 2888.3 树和图 2928.3.1 树 2928.3.2 图 2998.4 常用算法 3038.4.1 算法概述 3038.4.2 排序算法 3088.4.3 查找算法 3158.4.4 字符串处理 3248.4.5 递归算法 3278.4.6 图的相关算法 328第9章 标准化和知识产权基础知识 3339.1 标准化的基本知识 3339.1.1 标准化的基本概念 3339.1.2 信息技术标准化 3389.1.3 标准化组织 3419.1.4 ISO 9000标准简介 3439.1.5 能力成熟度模型简介 3459.2 知识产权基础知识 3479.2.1 知识产权的基本概念 3479.2.2 计算机软件著作权 3499.2.3 计算机软件的商业秘密权 360第10章 安全性基础知识 36310.1 安全性概述 36310.2 计算机病毒和计算机犯罪概述 36510.3 网络安全 37110.4 访问控制 37410.5 加密与解密 376第11章 C/C++程序设计 38111.1 C++程序基础 38111.1.1 C/C++程序基本结构 38211.1.2 数据类型和运算符 38311.1.3 基本输入输出 39111.1.4 控制语句 39511.1.5 函数 39911.1.6 指针与引用 40311.2 类与对象 40811.3 继承与多态 41611.4 输入与输出流库 42111.5 异常处理 42411.6 类库 42611.6.1 string 42711.6.2 STL 43011.6.3 vector 43211.7 C程序设计要点 43511.7.1 递归函数 43511.7.2 程序错误 43611.7.3 指针与链表 444第12章 Java语言程序设计 44512.1 Java语言概述 44512.1.1 Java语言的特点 44512.1.2 Java开发环境 44612.2 Java语言基础 44612.2.1 Java基本数据类型 44712.2.2 控制结构 45312.2.3 Java数组与字符串 45512.3 类与接口 45812.3.1 类的定义与使用 45812.3.2 对象的初始化 46012.3.3 包 46212.3.4 继承 46312.3.5 抽象类与接口 46612.4 异常 46912.4.1 异常的处理 47012.4.2 自定义异常 47112.5 文件输入、输出和流 47412.5.1 字节流 47412.5.2 字符流 47712.6 Java小应用程序 47812.7 Java类库的使用 481[1]