软件设计师〔原高级程序员〕考试大纲一、考试说明1.考试要求:(1)掌握数据表示、算术与逻辑运算;(2)掌握相关的应用数学、离散数学的根底知识;(3)掌握计算机体系构造以及各主要部件的性能与根本工作原理;(4)掌握操作系统、程序设计语言的根底知识,了解编译程序的根本知识;(5)熟练掌握常用数据构造与常用算法;(6)熟悉数据库、网络与多媒体的根底知识;(7)掌握C程序设计语言,以及C++、Java、Visual、Basic、VisualC++中的一种程序设计语言;(8)熟悉软件工程、软件过程改良与软件开发工程管理的根底知识;(9)熟悉掌握软件设计的方法与技术;(10)掌握常用信息技术标准、平安性,以及有关法律、法规的根本知识;(11)了解信息化、计算机应用的根底知识;(12)正确阅读与理解计算机领域的英文资料。2.通过本考试的合格人员能根据软件开发工程管理与软件工程的要求,按照系统总体设计规格说明书进展软件设计,编写程序设计第1页规格说明书等相应的文档,组织与指导程序员编写、调试程序,并对软件进展优化与集成测试,开发出符合系统总体设计要求的高质量软件;具有工程的实际工作能力与业务水平。3.本考试设置的科目包括:(1)计算机及软件工程知识,考试时间为150分钟,笔试;(2)软件设计,考试时间为150分钟,笔试。二、考试范围考试科目1:计算机及软件工程知识1.计算机科学根底1.1数制及其转换·二进制、十进制与十六进制等常用制数制及其相互转换1.2数据的表示·数的表示〔原码、反码、补码、移码表示,整数与实数的机内表示,精度与溢出〕·非数值表示〔字符与汉字表示、声音表示、图像表示〕·校验方法与校验码〔奇偶校验码、海明校验码、循环冗余校验码〕1.3算术运算与逻辑运算·逻辑代数的根本运算与逻辑表达式的化简1.4数学根底知识·命题逻辑、谓词逻辑、形式逻辑的根底知识第2页·常用数值计算〔误差、矩阵与行列式、近似求解方程、插值、数值积分〕·排列组合、概率论应用、应用统计〔数据的统计分析〕·运算根本方法〔预测及决策、线性规划、网络图、模拟〕1.5常用数据构造·数组〔静态数组、动态数组〕、线性表、链表〔单向链表、双向链表、循环链表〕、队列、栈、树〔二叉树、查找树、平衡树、线索树、线索树、堆〕、图等的定义、存储与操作·Hash〔存储地址计算,冲突处理〕1.6常用算法·排序算法、查找算法、数值计算方法、字符串处理方法、数据压缩算法、递归算法、图的相关算法·算法及数据构造的关系、算法效率、算法设计、算法描述〔流程图、伪代码、决策表〕、算法的复杂性2.计算机系统知识2.1硬件知识计算机系统的组成、体系构造分类及特性·CPU与存储器的组成、性能与根本工作原理·常用I/O设备、通信设备的性能,以及根本工作原理·I/O接口的功能、类型与特性·I/O控制方式〔中断系统、DMA、I/O处理机方式〕第3页·CISC/RISC,流水线操作,多处理机,并行处理存储系统·主存-Cache存储系统的工作原理·虚拟存储器根本工作原理,多级存储体系的性能价格·RAID类型与特性平安性、可靠性及系统性能评测根底知识·诊断及容错·系统可靠性分析评价·计算机系统性能评测方式2.2软件知识操作系统知识·操作系统的内核〔中断控制〕、进程、线程概念·处理机管理〔状态转换、共享及互斥、分时轮转、抢占、死锁〕·存储管理〔主存保护、动态连接分配、分段、分页、虚存〕·设备管理〔I/O控制、假脱机〕·文件管理〔文件目录、文件组织、存取方法、存取控制、恢复处理〕·作业管理〔作业调度、作业控制语言〔JCL〕、多道程序设计〕·汉字处理,多媒体处理,人机界面第4页·网络操作系统与嵌入式操作系统根底知识·操作系统的配置程序设计语言与语言处理程序的知识·汇编、编译、解释系统的根底知识与根本工作原理·程序设计语言的根本成分:数据、运算、控制与传输,过程〔函数〕调用·各类程序设计语言主要特点与适用情况2.3计算机网络知识·网络体系构造〔网络拓扑、OSI/RM、根本的网络协议〕·传输介质、传输技术、传输方法、传输控制·常用网络设备与各类通信设备·Client/Server构造、Browser/Server构造·LAN拓扑,存取控制,LAN的组网,LAN间连接,LAN-WAN...