程序员考试培训指南一、考试说明1.考试目标通过本考试的合格人员能根据软件开发项目管理和软件工程的要求,按照程序设计规格说明书编制并调试程序,写出相应的程序文档,具有助理工程师(或技术员)的实际工作能力和业务水平。2.考试要求(1)掌握数制及其转换、数据的机内表示、算术和逻辑运算、应用数学的基础知识;(2)了解计算机的组成以及各主要部件性能指标;(3)掌握操作系统、程序设计语言的基础知识;(4)熟练掌握基本数据结构和常用算法;(5)熟练掌握C程序设计语言以及C++、Java中的一种程序设计语言;(6)熟悉数据库、网络和多媒体的基础知识;(7)了解软件工程的基础知识、软件过程基本知识、软件开发项目管理的常识;(8)了解常用信息技术标准、安全性以及有关法律、法规的基础知识;(9)了解信息化及计算机应用的基础知识;(10)正确阅读和理解计算机领域的简单英文资料。3.考试科目计算机与软件工程基础知识,考试时间为150分钟,笔试,选择题;程序设计,考试时间为150分钟,笔试,问答题。二、考试内容说明:“I”、“II”和“III”表示掌握或熟悉的程度。“I”:对所列知识要理解其内容及含义(理解)。“II”:在有关问题中能直接使用(一般应用)。“III”:对所列知识要理解其确切含义及与其它知识的联系,能够进行叙述和解释,并能在实际问题的分析、综合、推理和判断等过程中运用(综合应用)。考试科目1:计算机与软件工程基础知识1.计算机科学基础1.1数制及其转换二进制、十进制和十六进制等常用数制及其相互转换二进制与十进制之间的相互转换(II)二进制与十六进制之间的相互转换(I)1.2数据的表示数的表示带符号定点数据(纯整数和纯小数)的原码、反码、补码表示(II)浮点数(实数)的表示(I)精度和溢出的概念(II)非数值数据的表示(字符和汉字表示、声音表示、图像表示)西文字符的表示(I)汉字的表示方法(I)声音数据的表示方法(I)图像数据的表示方法(I)1.3算术运算和逻辑运算计算机中二进制数的运算方法补码表示定点数的相加、相减运算(I)逻辑代数的基本运算基本的与、或、非逻辑运算(II)1.4数学应用常用数值计算矩阵的基本运算(I)方程的近似求解(I)线性插值(I)排列组合,应用统计排列组合计算(I)基本的数据统计分析方法及实例计算(I)编码基础ASCII码的特点及编码计算(II)汉字编码的特点(I)奇偶校验码的特点及实例计算(II)循环冗余码的定义及构造(I)海明码的定义及构造(I)1.5常用数据结构数组数组的定义及特点(I)一维数组元素的存储特点和元素位置计算(II)二维数组元素的按行存储及按列存储方式的特点及元素的位置计算(II)静态数组的概念及动态数组的概念(I)线性表及链表线性表的定义和基本运算(I)线性表的顺序存储和特点(I)指针、结点、头指针和头结点的概念(I)单向链表的定义及特点(II)双向链表的定义及特点(I)环形链表的定义及特点(II)队列、栈队列的定义及运算特点(II)循环队列的定义及运算(I)队列采用环形链表的运算特点(I)栈的定义及运算特点(II)栈采用一维数组存储结构的运算特点(I)栈采单向链表存储结构的运算特点(I)树二叉树的定义(I)二叉树的顺序存储结构和二叉链表存储结构的特点(II)二叉树的先序、中序、后序和层序遍历运算的含义(II)最优二叉树(哈夫曼树)的定义(I)图图的定义和常用术语(I)图的邻接矩阵存储结构和邻接表存储结构定义及特点(II)1.6常用算法算法与数据结构的关系算法的定义和特点(I)算法与数据结构的关系(I)算法设计和算法描述基本的算法设计方法(I)算法的流程图描述和伪代码描述方法(II)常用的排序算法插入排序、冒泡排序、选择排序算法(III)希尔排序、快速排序、堆排序、归并排序算法(II)查找算法顺序查找、二分查找过程(III)常用的数值计算方法(II)字符串处理算法(II)递归算法(I)最小生成树、拓扑排序和单源点最短路径求解算法(I)2.计算机系统基础知识2.1硬件基础知识2.1.1计算机的类型和特点微机(PC机)、工作站、服务器、主机、大型计算机、巨型计算机、并行机的特点(I)2.1.2中央处理器CPUCPU的组成CPU的组成和基本结构(I)控制器与运算器的基本组成和功能(I)常用的寄存器累加器AC、标志寄存器、通用寄存器组的概念和功能(I)程序计数器(PC)、指令寄存器(IR)、地址寄存器(MAR)和数据寄存器(MDR)的定义和作用(I)指令系统,寻址方式指令系统的概念(I)指令的概念、格式和类型(I)立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、间接寻址、相对寻址、变址寻址的含义(I)指令执行控制,中断控制,处理机性能指令的执行过程(I)流水线的基本概念(I)中断的概念(II)2.1.3主存和辅存存储介质(半导体、硬盘、光盘、U盘等)半导体存储器的特点(I)硬盘的参数、容量(II)U盘的容量和特点(II)高速缓存(Cache),主存高速缓存(Cache)的概念、作用和基本构成(I)主存的类型、容量和性能指标(II)辅存设备磁盘、磁带、光盘、DVD盘、U盘等辅存设备的特点、性能和容量(II)2.1.4I/O接口、I/O设备和通信设备I/O接口I/O接口的功能(I)程序查询方式、中断处理方式的含义和特点(I)DMA(直接存储器存取)方式的含义和特点(I)I/O设备(类型、特性)常见I/O设备的类型和特性(I)通信设备(类型、特性)常见通信设备的类型和特性(I)I/O设备、通信设备的连接方法和连接介质类型常见I/O设备与主机的连接方法(I)总线的概念、类型和特点(II)常见通信设备的连接方法(I)常见连接介质的类型和特点(I)2.2软件基础知识2.2.1操作系统基础知识操作系统的类型和功能操作系统作用、特征与功能(I)操作系统分类(I)嵌入式操作系统的基本概念(I)网络操作系统的基本概念(I)分时操作系统与实时操作系统,网络操作系统与分布式操作系统的区别(I)处理机管理(进程、线程)进程的定义及组成(I)进程控制块(PCB)的基本概念(I)进程状态的三态模型和五态模型(II)进程间的通信,临界资源、临界区、同步与互斥的基本概念(I)P/V操作(II)进程调度:理解高级调度、中级调度、低级调度、调度方式方面的基础知识(I)死锁的定义、产生死锁的原因、产生死锁的必要条件(I)线程的定义,线程与进程的区别(Ⅰ)存储管理虚拟地址、地址空间、存储空间、地址重定位的基本概念(Ⅰ)固定分区、可变分区、可重定位分区的基本概念(Ⅰ)分页/请求分页存储管理的基本概念与原理(I)设备管理设备管理基本概念,块设备、字符设备、独占设备、共享设备、虚拟设备的含义(I)Spooling(SimultaneousPeripheralOperationsOnLine)定义、组成和结构(I)引入缓冲技术的原因与目的(I)磁盘调度的基本概念:移臂调度、旋转调度(I)先来先服务(First-ComeFirst-Served,FCFS)、最短寻道时间优先SSTF(ShortestSeekTimeFirst)、扫描算法(SCAN)、单向扫描调度算法(CSCAN)磁盘调度算法的基本思想(I)文件管理文件、文件系统、文件类型、文件组织结构的基本概念(I)文件目录的概念,一级目录、二级目录、多级目录的基本概念(I)文件的存取方法:顺序存取法、直接存取法、按键存取法的基本概念(I)位示图、空闲块表等文件存储空间的管理算法思想(I)空闲块链、成组链接法的基本概念(I)作业管理作业的状态(提交、后备、执行、完成)、作业控制块和作业后备队列的基本概念(I)先来先服务、短作业优先、响应比高优先作业调度算法思想(II)优先级调度算法思想(I)图形用户界面和操作方法字符用户界面、图形用户界面的基本特点(I)常见操作系统的使用(Windows,Linux)(II)2.2.2程序设计语言和语言处理程序的基础知识语言翻译基础知识语言翻译的基本概念(I)汇编的含义和基本过程(I)编译的基本过程及编译各阶段的基本任务(I)解释的含义和基本过程(I)正规表达式的定义(II)程序设计语言的基本成分:数据、运算、控制和传输程序设计语言的数据(数据类型)、运算(运算符和表达式)和语句的类型和功能(I)函数的参数传递机制:传值、传地址(II)程序语言类型和特点过程式程序语言、面向对象程序设计语言、函数式程序设计语言、逻辑程序设计语言的基本特点(I)脚本语言的概念和基本特点(I)2.3网络基础知识网络的功能、分类、组成和拓扑结构通信子网和资源子网的概念(I)局域网、城域网和广域网的概念(I)星形网、树形网、环形网和总线网的概念(I)基本的网络协议与标准物理层、数据链路层、网络层、传输层、应用层的基本概念(I)TCP/IP协议及相关协议的功能(I)常用网络设备与网络通信设备的作用和特点中继器、集线器(HUB)、网关、交换机、路由器、网桥的基本功能和特点(I)调制解调器的基本功能和特点(I)Client/Server结构和Browser/Server结构的基本概念和特点(I)局域网(LAN)基础知识(I)互联网(Internet)基础知识互联网的接入方式(I)TCP/IP协议的属性设置(II)常用的互联网服务及协议(I)IP地址的分类、计算(II)防火墙基本概念(I)2.4数据库基础知识数据库管理系统的主要功能和特征数据库系统(DataBaseSystem,DBS)定义及组成(I)数据库管理系统(DataBaseManagementSystem,DBMS)功能、特征、组成(I),文件系统与数据库系统的差异(II)数据库模式(概念模式、外模式、内模式)概念模式(模式)、外模式(用户模式或子模式)、内模式(物理模式)的基本概念(II)三级模式和两级映像(模式/内模式映像、外模式/模式映像)的基本概念(II)数据的逻辑独立性和物理独立性的基本概念(II)数据模型,ER图层次模型、网状模型、关系模型、面向对象模型的基本概念(I)数据模型的三要素(数据结构、数据操作、数据的约束条件)的含义(I)E-R模型基本概念(II);E-R图(E-R模型)向关系模型的转换的基本方法(II)实体中主键、候选键、外键的基本概念(II)一对一(1:1)、一对多(1:n)、多对多(m:n)联系类型的含义(II)简单属性、复合属性、单值属性、多值属性、NULL属性、派生属性的含义(I)数据操作(关系运算)关系数据库、关系数据库模式基础知识(I)关系模型的实体完整性、参照完整性、用户定义完整性的基本概念(I)并、差、笛卡尔积、投影、选择关系运算的基本概念(II)扩展的关系运算中选择、投影、连接运算方法(I)数据库语言(SQL)数据定义语言(DDL):CREATETABLE(创建表)的应用(II)数据操纵语言(DML):SELECT(查询)、INSERT(插入)、DELETE(删除)和UPDATE(修改)的应用(II)完整性(integrity)定义:PRIMARYKEY、FOREIGNKEYREFERENCES使用方法(II)权限管理:GRANT和REVORK使用方法(II)数据库的主要控制功能(并发控制,安全控制)事务的基本概念、事务的特性、故障的类型(I)数据不一致性(丢失修改、不可重复读、读脏数据)的基础知识(I)并发控制中活锁/死锁、可串行性、两段锁协议的基本概念(I)安全控制(权限机制、视图机制、加密机制)的基本概念(I)2.5多媒体基础知识多媒体基本知识多媒体的概念,感觉媒体、表示