1、5.二叉排序树6.平衡二叉树(三)树、森林1.树的存储结构2.森林与二叉树的转换3.树和森林的遍历(四)树的应用1.等价类问题2.哈夫曼(Huffman)树和哈夫曼编码四、 图(一) 图的概念(二) 图的存储及基本操作1. 邻接矩阵法2. 邻接表法(三) 图的遍历1. 深度优先搜索2. 广度优先搜索(四) 图的基本应用及其复杂度分析1. 最小(代价)生成树2. 最短路径3. 拓扑排序4. 关键路径五、 查找(一) 查找的基本概念(二) 顺序查找法(三) 折半查找法(四) B-树(五) 散列(Hash)表及其查找(六) 查找算法的分析及应用六、 内部排序(一) 排序的基本概念(二) 插入排序1.
2、 直接插入排序2. 折半插入排序(三) 气泡排序(bubble sort)(四) 简单选择排序(五) 希尔排序(shell sort)(六) 快速排序(七) 堆排序(八) 二路归并排序(merge sort)(九) 基数排序(一十) 各种内部排序算法的比较(一十一) 内部排序算法的应用【知识点解析】 1.线性表 线性表是一种最简单的数据结构,在线性表方面,主要考查线性表的定义和基本操作、线性表的实现。在线性表实现方面,要掌握的是线性表的存储结构,包括顺序存储结构和链式存储结构,特别是链式存储结构,是考查的重点。另外,还要掌握线性表的基本应用。 2.栈、队列和数组 栈和队列是两种特殊的线性表,在
3、这方面,要求我们掌握栈和队列的基本概念,以及他们之间的区别。对于栈和队列的存储结构(包括顺序存储结构、链式存储结构)要有较深的理解,对于栈和队列的应用,例如,排队问题、子程序调用问题、表达式问题等,要搞清楚。 一维数组属于线性表范畴,但多维数组不属于线性表。在这方面,主要掌握数组的存储结构,例如按行优先、按列优先等,某个元素存在的地址是什么。对于特殊矩阵(二维数组)的压缩存储原理也要搞清楚。 3、树与二叉树 二叉树和树是两种不同的概念,这一点是必须要搞清楚的。在这个部分,我们要掌握树的定义、二叉树的定义及主要特征(特殊的二叉树、二叉树的性质)。在二叉树的顺序存储结构和链式存储结构方面,特别是链
4、式存储结构,因为很多应用都是建立在链式存储基础上,例如,二叉树的遍历(前序遍历、中序遍历、后序遍历)就是一种典型的应用。 在特殊的二叉树中,完全二叉树的概念是必须要搞清楚的,其次,线索二叉树的基本概念和构造、二叉排序树、平衡二叉树的基本概念和应用,特别是二叉排序树的基本性质和特点要能很好地理解。 多棵独立的树就组成了森林,树的存储结构和遍历、森林的遍历、树和二叉树的转换、森林和二叉树的转换等知识,也要有了了解。 最后就是树的应用,通常会作为综合应用类试题出现,包括等价类问题、哈夫曼(Huffman)树和哈夫曼编码等。 4、图 在数据结构中,图的结构是最复杂的,这里的概念也是最多的。我们要掌握图
5、的基本概念(有向图、无向图、连通、路径、子图、出度、入度、生成树、最短路径、关键路径等)。 图的存储及基本操作主要有邻接矩阵法和邻接表法,我们要掌握这有向图和无向图的这2种存储方法,要清楚图的连通和存储方法之间的关系。例如,一个顶点的出度和临界矩阵中1的个数有什么关系,等等。 图的遍历方法有深度优先搜索和广度优先搜索,我们要掌握这2种遍历方法的算法实现。给出一个具体的图,要能知道它的遍历次序。 在数据结构课程中,图的基本应用是最多的,也是最复杂的,我们要掌握这些应用的复杂度分析。要掌握的具体应用主要包括最小(代价)生成树、最短路径、拓扑排序、关键路径。在给出的一个具体的图中,我们要会利用已知条
6、件,求出上述应用的结果。 5、查找 在给定的数据集合中查找某个关键值就是查找,查找的基本方法主要有顺序查找法、折半查找法、B-树、散列(Hash)表及其查找。考的比较多的是折半查找和散列表,我们要掌握它们的基本概念和方法,例如散列表的碰撞如何解决,装载因子的概念等。 另外,我们要掌握各种查找算法的分析及应用,最好能把各种查找在查找成功、查找失败的情况下的最好、平均、最坏的平均查找次数的计算方法搞清楚。 6、内部排序 根据考试大纲,只考查内部排序。所谓内部排序,就是在内存中进行排序。在这一部分中,主要要掌握直接插入排序、折半插入排序、冒泡排序(bubble sort)、简单选择排序、希尔排序(s
7、hell sort)、快速排序、堆排序、二路归并排序(merge sort)、基数排序的基本概念和方法。搞清楚这些排序方法的流程,以及它们之间的区别。 在这个知识点,一个很重要的考查点就是各种内部排序算法的比较,一般的书上都会有这样的一个表格,列出了所有排序在各种情况下(最好、最坏、平均)的时间复杂度和空间复杂度,这个表是需要我们记下来的。当然,如果我们能掌握复杂度的计算方法,自己能推算出来,那就更好了。 最后,就是要掌握内部排序算法的基本应用,以及算法的实现。 【复习方法】 1、教材的选择 从考试大纲来看,所要求的知识在一般的大学数据结构教材中都已经包含,所以,选择哪本书并不是最重要的事情。
8、不过,根据希赛教育推荐,对于数据结构的复习,可以选择清华大学出版社的数据结构(第二版)(严蔚敏主编)。这本书有多种语言的版本,建议选择C语言的版本,在复习的过程中,还可以配以相应的习题集。 2、学习方法 对于数据结构的学习,难在其中的算法及实现。有条件的考生,可以在计算机上编写程序,自己实现教材上的算法(要注意,书上的算法通常都采用伪代码编写,需要我们自己用某种程序设计语言去具体实现)。如果没有条件,那就只有在心里进行推导了,可以使用实际的例子,手工“实现”算法。计算机组成原理1. 理解单处理器计算机系统中各部件的内部工作原理、组成结构以及相互连接方式,具有完整的计算机系统的整机概念。2. 理
9、解计算机系统层次化结构概念,熟悉硬件与软件之间的界面,掌握指令集体系结构的基本知识和基本实现方法。3. 能够运用计算机组成的基本原理和基本方法,对有关计算机硬件系统中的理论和实际问题进行计算、分析,并能对一些基本部件进行简单设计。一、 计算机系统概述(一) 计算机发展历程(二) 计算机系统层次结构1. 计算机硬件的基本组成2. 计算机软件的分类3. 计算机的工作过程(三) 计算机性能指标吞吐量、响应时间;CPU时钟周期、主频、CPI、CPU执行时间;MIPS、MFLOPS。二、 数据的表示和运算(一) 数制与编码1. 进位计数制及其相互转换2. 真值和机器数3. BCD码4. 字符与字符串5.
10、 校验码(二) 定点数的表示和运算1. 定点数的表示无符号数的表示;有符号数的表示。2. 定点数的运算定点数的位移运算;原码定点数的加/减运算;补码定点数的加/减运算;定点数的乘/除运算;溢出概念和判别方法。(三) 浮点数的表示和运算1. 浮点数的表示浮点数的表示范围;IEEE754标准2. 浮点数的加/减运算(四) 算术逻辑单元ALU1. 串行加法器和并行加法器2. 算术逻辑单元ALU的功能和机构三、 存储器层次机构(一) 存储器的分类(二) 存储器的层次化结构(三) 半导体随机存取存储器1. SRAM存储器的工作原理2. DRAM存储器的工作原理(四) 只读存储器(五) 主存储器与CPU的
11、连接(六) 双口RAM和多模块存储器(七) 高速缓冲存储器(Cache)1. 程序访问的局部2. Cache的基本工作原理3. Cache和主存之间的映射方式4. Cache中主存块的替换算法5. Cache写策略(八) 虚拟存储器1. 虚拟存储器的基本概念2. 页式虚拟存储器3. 段式虚拟存储器4. 段页式虚拟存储器5. TLB(快表)四、 指令系统(一) 指令格式1. 指令的基本格式2. 定长操作码指令格式3. 扩展操作码指令格式(二) 指令的寻址方式1. 有效地址的概念2. 数据寻址和指令寻址3. 常见寻址方式(三) CISC和RISC的基本概念五、 中央处理器(CPU)(一) CPU的
12、功能和基本结构(二) 指令执行过程(三) 数据通路的功能和基本结构(四) 控制器的功能和工作原理1. 硬布线控制器2. 微程序控制器微程序、微指令和微命令;微指令的编码方式;微地址的形式方式。(五) 指令流水线1. 指令流水线的基本概念2. 超标量和动态流水线的基本概念六、 总线(一) 总线概述1. 总线的基本概念2. 总线的分类3. 总线的组成及性能指标(二) 总线仲裁1. 集中仲裁方式2. 分布仲裁方式(三) 总线操作和定时1. 同步定时方式2. 异步定时方式(四) 总线标准七、 输入输出(I/O)系统(一) I/O系统基本概念(二) 外部设备1. 输入设备:键盘、鼠标2. 输出设备:显示
13、器、打印机3. 外存储器:硬盘存储器、磁盘阵列、光盘存储器(三) I/O接口(I/O控制器)1. I/O接口的功能和基本结构2. I/O端口及其编址(四) I/O方式1. 程序查询方式2. 程序中断方式中断的基本概念;中断响应过程;中断处理过程;多重中断和中断屏蔽的概念。3. DMA方式DMA控制器的组成;DMA传送过程。4. 通道方式在计算机组成原理方面,主要考查计算机系统基础知识、数据的表示和运算、存储器层次结构、指令系统、中央处理器、总线、输入输出系统。 1、计算机系统概述 学习计算机组成原理之前,我们先要了解计算机的发展历程,搞清楚计算机的系统层次结构,包括计算机硬件的基本组成(五大部
14、件的构成)、计算机软件的分类,以及计算机的基本工作过程。 从体系结构上来看,有多种不同类型的计算机,那么这些不同的计算机谁好谁坏?如何评价?所以,还需要我们了解计算机性能评价指标和相关参数,包括吞吐量、响应时间;CPU时钟周期、主频、CPI、CPU执行时间;MIPS、MFLOPS等。 2、数据的表示和运算 我们日常所使用的是十进制数据,但在计算机中,除了十进制数据外,还有二进制、八进制、十六进制表示方法,我们要掌握这些进位计数制及其相互转换的方法,要搞清楚真值(实际的数值)和机器数(计算机中表示的数值)之间的关系,特别是负数的各种表示。另外,还要理解BCD码、字符与字符串的编码方法,以及数据的
15、校验码(奇偶校验、CRC冗余校验等)。 不管是哪种进制和校验方法,计算机中数据的表示有原码、反码、补码等方法,我们要搞清楚它们之间的关联与区别。 在计算机中对数据进行计算,分为定点表示和浮点表示。 在定点数的表示和运算方面,我们要掌握定点数的表示(无符号数的表示,有符号数的表示)和定点数的运算,包括定点数的位移运算、原码定点数的加/减运算、补码定点数的加/减运算、定点数的乘/除运算、溢出概念和判别方法。在浮点数的表示和运算方面,我们要掌握浮点数的表示(浮点数的表示范围和IEEE754标准)和浮点数的加/减运算。 本知识点的最后一个考点就是算术逻辑单元ALU,我们要掌握串行加法器和并行加法器、算
16、术逻辑单元ALU的功能和结构。 3、存储器层次结构 从整个计算机的存储体系来看,可以看成是一个“Cache内存外存”三级结构,在这个层次化结构中,我们要掌握存储器的分类以及各类存储器的基本工作原理,包括半导体随机存取存储器(SRAM、DRAM)、只读存储器(ROM),掌握主存储器(内存)与CPU的连接和数据交换、双口RAM和多模块存储器,还有就是外存储器(在输入输出系统知识点中,做具体讲解)。 在存储器这个知识点中,2个很重要的考点是高速缓冲存储器(Cache)和虚拟存储器(在操作系统课程中,也会讲解有关虚拟存储器的知识点)。 在CPU和内存之间增加一层Cache,其目的是为了解决CPU和内存
17、的速度匹配问题。在这一点,我们要掌握程序访问的局部性原理(时间局部性、空间局部性)、Cache的基本工作原理(命中率)、Cache和主存之间的映射方式、Cache中主存块的替换算法,以及Cache写策略。 虚拟存储器的重点在于“虚拟”二字,我们要掌握虚拟存储器的基本概念及种类,包括页式虚拟存储器、段式虚拟存储器、段页式虚拟存储器、TLB(快表)等,理解这些虚拟存储器的基本原理、碎片的处理,各种方法的优点和缺点。 4、指令系统 在指令系统知识点中,我们要掌握指令的格式(包括指令的基本格式、定长操作码指令格式、扩展操作码指令格式)和各种寻址方式,还要能够区分数据寻址和指令寻址的区别。 本知识点的另
18、外一个重要考点就是CISC(复杂指令系统计算机)和RISC(精简指令系统计算机),我们要掌握它们的基本概念、特征,以及它们之间的主要区别。 5、中央处理器 中央处理器,也就是我们常说的CPU。在这个知识点,我们要掌握CPU的功能和基本结构,以及工作原理,具体包括指令执行过程、数据通路的功能和基本结构、控制器的功能和工作原理(硬布线控制器、微程序控制器)。特别是在微程序控制器考点中,要掌握微程序、微指令和微命令,微指令的编码方式,以及微地址的形式方式。 在这个知识点中,一个最重要的考点是流水线(主要是指令流水线)。我们要搞清楚流水线的基本概念(包括超标量和动态流水线),为什么需要流水线,流水线有
19、哪些优势,哪些因素会影响流水线,等等。在这一点,有可能出现计算题,例如,求流水线的周期、求指令的执行时间。有关流水线,还有一些评价指标,例如流水线的吞吐率、加速比等。 6、总线 总线就是一组进行互连和传输信息(指令、数据和地址)的信号线,我们要掌握总线的基本概念,总线的分类,以及总线的组成和性能指标(例如,各类总线的宽度会影响哪些部件的性能等)。 其次,就是要掌握总线仲裁方法(包括集中仲裁方式和分布仲裁方式)和总线操作和定时(包括同步定时方式和异步定时方式)。 最后,就是要对总线的标准(正式标准和工业标准)有所了解,总线标准主要规定总线的机械结构规范、功能结构规范和电气规范。 7、输入输出系统
20、 在输入输出(I/O)系统知识点,我们首先要掌握I/O系统的基本概念,理解各种外部设备,其中包括输入设备(键盘、鼠标、扫描仪等)、输出设备(显示器、打印机等)、外存储器(硬盘存储器、磁盘阵列、光盘存储器等)。要理解这些设备的基本工作原理和常见的性能指标。例如显示器的分辨率、磁盘的读写时间等,特别是磁盘的有关读写过程(寻道时间、等待时间等),是一定要掌握的。 其次,我们要掌握I/O接口(I/O控制器)的功能和基本结构、I/O端口及其编址方式。 在I/O方式中,主要掌握程序查询方式、程序中断方式、DMA方式、通道方式的基本概念、工作原理和过程,以及这些方式之间的区别、各自的优点和缺点、应用场合。在
21、这些方式中,以程序中断方式为考查重点,我们要掌握中断的基本概念、中断响应过程、中断处理过程、多重中断和中断屏蔽的概念。 从考试大纲来看,所要求的知识在一般的大学计算机组成原理教材中都已经包含,所以,选择哪本书并不是最重要的事情。不过,根据希赛教育的推荐,对于计算机组成原理的复习,可以选择高等教育出版社的计算机组成原理(第2版)(唐朔飞主编),该书写得比较好,曾经获得优秀教材称号,同时也是国家高等教育“十一五”教材。在学习的过程中,同样,配以计算机组成原理:学习指导与习题解答(唐朔飞,高等教育出版社)。 计算机组成原理的基本要求是使考生掌握计算机常用的逻辑器件、部件的原理、参数及使用方法,学懂简
22、单、完备的单台计算机的基本组成原理,学习计算机设计中的入门性知识,掌握维护、使用计算机的技能。 总的来讲,计算机组成原理课程中属于记忆型的知识比较多,需要我们花时间去对相关概念、原理进行识记。另外,就是有关参数和性能指标的计算和评价,这一块是需要理解的,不能靠死记硬背。在学习计算机组成原理课程中,要注意以下几方面的问题: (1)要正确理解考试大纲中规定的各种基本概念,掌握各概念中的要点。 (2)要能将有关的概念和原理联系起来,不要孤立地学习各个部分的内容,比如数据表示、运算和运算器部件等,都要关联起来。 (3)要把握重点、难点问题,分清主次。所以,学习时要紧紧抓住考试大纲。操作系统1. 了解操
23、作系统在计算机系统中的作用、地位、发展和特点。2. 理解操作系统的基本概念、原理,掌握操作系统设计方法与实现技术。3. 能够运用所学的操作系统原理、方法与技术分析问题和解决问题。一、 操作系统概述(一) 操作系统的概念、特征、功能和提供的服务(二) 操作系统的发展与分类(三) 操作系统的运行环境二、 进程管理(一) 进程与线程1. 进程概念2. 进程的状态与转换3. 进程控制4. 进程组织5. 进程通信共享存储系统;消息传递系统;管道通信。6.线程概念与多线程模型(二)处理机调度1.调度的基本概念2.调度时机、切换与过程3.调度的基本准则4.调度方式5.典型调度算法先来先服务调度算法;短作业(
24、短任务、短进程、短线程)优先调度算法;时间片轮转调度算法;优先级调度算法;高响应比优先调度算法;多级反馈队列调度算法。(三)进程同步1. 进程同步的基本概念2. 实现临界区互斥的基本方法软件实现方法;硬件实现方法。3. 信号量4. 管程5. 经典同步问题生产者-消费者问题;读者-写者问题;哲学家进餐问题。(四) 死锁1. 死锁的概念2. 死锁处理策略3. 死锁预防4. 死锁避免系统安全状态:银行家算法。5. 死锁检测和解除三、 内存管理(一) 内存管理基础1. 内存管理概念程序装入与链接;逻辑地址与物理地址空间;内存保护。2. 交换与覆盖3. 连续分配管理方式单一连续分配;分区分配。4. 非连
25、续分配管理方式分页管理方式;分段管理方式;段页式管理方式。(二) 虚拟内存管理1. 虚拟内存基本概念2. 请求分页管理方式3. 页面置换算法最佳置换算法(OPT);先进先出置换算法(FIFO);最近最少使用置换算法(LRU);时钟置换算法(CLOCK)。4. 页面分配策略5. 抖动抖动现象;工作集。6. 请求分段管理方式7. 请求段页式管理方式四、 文件管理(一) 文件系统基础1. 文件概念2. 文件结构顺序文件;索引文件;索引顺序文件。3. 目录结构文件控制块和索引节点;单级目录结构和两级目录结构;树形目录结构;图形目录结构。4. 文件共享共享动机;共享方式;共享语义。5. 文件保护访问类型
26、;访问控制。(二) 文件系统实现1. 文件系统层次结构2. 目录实现3. 文件实现(三) 磁盘组织与管理1. 磁盘的结构2. 磁盘调度算法3. 磁盘的管理五、 输入输出(I/O)管理(一) I/O管理概述1. I/O设备2. I/O管理目标3. I/O管理功能4. I/O应用接口5. I/O控制方式(二) I/O核心子系统1. I/O调度概念2. 高速缓存与缓冲区3. 设备分配与回收4. 假脱机技术(SPOOLing)5. 出错处理操作系统学科是围绕操作系统的功能来展开的,包括进程管理、存储管理、文件管理、作业管理和设备管理(输入/输出管理)。 1、操作系统概述 在操作系统的基础知识方面,我们
27、要掌握操作系统的概念、特征、功能和提供的服务,操作系统的发展与分类,以及操作系统的运行环境。 2、进程管理 进程管理是操作系统的核心功能,也是考试的重点,这部分的考试分数将在10分以上。对进程管理知识点的细化,可以包括4个考点,分别是进程与线程的基本概念、处理机调度、进程同步与互斥、死锁。 在进程与线程的基本概念方面,我们要掌握进程的概念、进程的状态与转换(三态模型、五态模型)、进程控制、进程组织、进程通信(共享存储系统、消息传递系统、管道通信),以及线程的概念与多线程模型。 在处理机调度方面,我们要掌握调度的基本概念、调度时机、切换与过程、调度的基本准则、调度方式,特别是要掌握几种典型的调度
28、算法,包括先来先服务调度算法、短作业(短任务、短进程、短线程)优先调度算法、时间片轮转度算法、优先级调度算法、高响应比优先调度算法、多级反馈队列调度算法等,搞清楚这些算法的基本原理和调度过程,以及每种调度算法的优点和缺点。 进程同步与互斥是进程管理的重点,也是操作系统学科的一个难点。这个考点的知识,一般都会出现在考试试题中。具体包括进程同步的基本概念、实现临界区互斥的基本方法(包括软件实现方法、硬件实现方法)、信号量(PV操作)、管程、经典同步问题(包括生产者-消费者问题、读者-写者问题、哲学家进餐问题等)。我们一定要掌握PV操作的概念、流程,以及PV操作在同步问题、互斥问题中的应用。 如果进程调度算法不合适,或者进程同步与互斥处理机制不好,就会产生死锁。死锁是进程之间“互相等待、互相不放弃”的一种僵持状态,我们要理解死锁的概念,知道死锁发生的根本原因和有关条件,死锁处理策略和死锁的预防、死锁的避免(系统安全状态、银行家算法),以及死锁检测和解除。在这个知识点中,特别是要掌握死锁产生的条件,因为知道了条件,就知道了解决办法。比较常考的内容是银行家算法。 3、内存管理 这部分内容与计算机组成原理考试模块有一定的交叉和重叠,主要考查
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1