计算机组成原理常考知识剖析及复习建议_第1页
计算机组成原理常考知识剖析及复习建议_第2页
计算机组成原理常考知识剖析及复习建议_第3页
计算机组成原理常考知识剖析及复习建议_第4页
计算机组成原理常考知识剖析及复习建议_第5页
已阅读5页,还剩107页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机硕士联考—计算机组成原理

本课程讨论单机系统范围内计算机各部件和系统的组成以及内部工作机制,使学生既能从全局或宏观的角度掌握计算机硬件系统的整体结构和工作原理,又能从局部或微观的角度理解计算机各个部件的工作过程和交互方式。

作为硕士研究生入学考试这样一类选拔性考试,其目的在于科学、公正、有效地测试考生掌握大学本科阶段专业基础知识、基础理论、基本方法的水平和分析问题、解决问题的能力。要想取得好的成绩靠死记硬背是不行的,要将精力放在基本概念、基本原理与基本方法的融会贯通上,并力求熟练运用所学知识分析、判断和解决有关理论问题与实际问题。一常考知识点剖析第一章计算机系统概述考纲要求(一)计算机发展历程(二)计算机系统层次结构(三)计算机性能指标年份单项选择题/分值综合应用题/分值小计/分值考核知识点20090题0题0分

20101题×2分0题2分计算机性能指标的有关概念20111题×2分0题2分计算机性能指标的相关术语2012 1题×2分0题2分计算机性能指标的计算2013 1题×2分0题2分计算机性能指标的计算2014 1题×2分0题2分计算机性能指标的计算2015 1题×2分0题2分计算机系统层次结构本章出题情况本章常考点:计算机性能指标的有关概念和相关术语,主要是以单项选择题的形式出现。第二章数据的表示与运算考纲要求(一)数制与编码(二)定点数的表示和运算(三)浮点数的表示和运算(四)算术逻辑单元ALU年份单项选择题/分值综合应用题/分值小计/分值考核知识点20092题×2分0题4分定点数和浮点数的运算20102题×2分0题4分定点数的运算,定点数和浮点数的表示20111题×2分1题×11分13分无符号整数和带符号整数的运算,IEEE标准浮点数的表示20122题×2分0题4分无符号整数运算,IEEE标准浮点数的表示范围20133题×2分0题6分IEEE标准浮点数的表示,定点数运算,海明码20142题×2分0题4分定点整数运算,IEEE标准浮点数的表示范围20152题×2分0题4分定点数和浮点数的运算本章出题情况本章常考点:定点数和浮点数的表示和运算,围绕着定点数和浮点数的表示和运算的题目很多,可能涉及到具体的运算,也可能仅涉及基本概念,但大多为通过具体运算考察对基本概能的理解和掌握的试题,其中IEEE754标准是浮点数中的一个常考点,并且将可以会是今后的常考点。第三章存储器层次结构考纲要求(一)存储器的分类(二)存储器的层次化结构(三)半导体随机存取存储器(四)主存储器与CPU的连接(五)双口RAM和多模块存储器(六)高速缓冲存储器(Cache)(七)虚拟存储器年份单项选择题/分值综合应用题/分值小计/分值考核知识点20092题×2分0题4分由芯片构成存储器,Cache的命中率20102题×2分1题×12分16分RAM和ROM的基本概念,存储系统的命中问题,Cache和主存之间的地址映射20112题×2分1题×12分16分随机存取方式,主存空间大小,虚拟存储器20123题×2分1题×11分17分存储器分类,存储器层次结构,数据存放方案,Cache替换算法20131题×2分1题×9分11分虚实地址转换,多体交叉存储方式20142题×2分1题×11分15分DRAM存储器,Cache工作原理,三级存储系统管理20154题×2分0题8分Cache和主存之间的地址映射,页式虚拟存储器,DRAM刷新,多体交叉存储方式本章出题情况本章常考点:本章的试题既可以以单项选择题形式出现,也可以以综合应用题形式出现。本章是出题频率最高的一章,考点较多,尤其是存储系统方面的试题已多次出现在分值很高的综合应用题中,以考察学生灵活运用基本概念和基本理论解决实际问题的能力。第四章指令系统考纲要求(一)指令格式(二)指令的寻址方式(三)CISC和RISC的基本概念年份单项选择题/分值综合应用题/分值小计/分值考核知识点20092题×2分0题4分指令相对寻址,CISC和RISC的基本概念20100题1题×11分11分指令的寻址方式20112题×2分0题4分常见数据寻址方式,条件转移指令20120题0题0分

20131题×2分1题×14分16分常见数据寻址方式,条件转移指令20141题×2分1题×12分14分指令格式,条件转移指令20150题1题×10分10分指令格式,指令的寻址方式本章出题情况本章常考点:指令和数据的寻址方式是本章经常考察的内容,可以以单项选择题的形式出现,也可以综合应用题的形式出现。综合应用题一般为通过具体实例考察对基本概念的理解和掌握的试题,以考察学生解决实际问题的能力。第五章中央处理器考纲要求(一)CPU的功能和基本结构(二)指令执行过程(三)数据通路的功能和基本结构(四)控制器的功能和工作原理(五)指令流水线年份单项选择题/分值综合应用题/分值小计/分值考核知识点20093题×2分1题×13分19分控制器的功能和工作原理,指令执行过程,指令流水线,数据通路的功能和基本结构20102题×2分0题4分CPU的功能与基本结构,指令流水线20112题×2分0题4分指令执行过程,指令流水线20121题×2分1题×12分14分微程序控制器,指令流水线20131题×2分0题2分指令流水线20141题×2分0题2分微程序控制器20150题1题×13分13分控制器的功能和工作原理,数据通路的功能和基本结构本章出题情况本章常考点:本章概念较多,指令执行过程、计算机流水线是本章的常考点,控制器、CPU以及数据通路的功能和基本结构等知识点也比较常见。试题可能以单项选择题的形式出现,也可能以综合应用题形式出现。灵活运用基本原理和基本方法,对实际问题进行分析是考查的热点也是难点。第六章总线考纲要求(一)总线概述(二)总线仲裁(三)总线操作和定时(四)总线标准年份单项选择题/分值综合应用题/分值小计/分值考核知识点20091题×2分0题2分总线带宽20101题×2分0题2分内部总线标准20111题×2分0题2分系统总线的基本概念20122题×2分0题4分总线性能指标,总线标准20131题×2分0题2分总线标准20142题×2分0题4分总线性能指标20151题×2分0题2分总线操作和定时本章出题情况本章常考点:总线的基本概念和总线的性能指标是本章的主要考点,考题多以单项选择题的形式出现。本章的知识点也可能作为综合应用题的背景知识,出现在其他章节中。第七章输入输出系统考纲要求(一)I/O系统基本概念(二)外部设备(三)I/O接口(I/O控制器)(四)I/O方式本章出题情况年份单项选择题/分值综合应用题/分值小计/分值考核知识点20091题×2分1题×8分10分中断请求,中断与DMA方式时CPU用于外设I/O时间占整个CPU时间的百分比20102题×2分0题4分带宽和显示器,单级中断的中断全过程20112题×2分0题4分中断屏蔽字,程序查询方式时CPU用于外设I/O时间占整个CPU时间的百分比20122题×2分0题4分I/O接口,中断隐指令20133题×2分0题6分RAID,磁盘,中断和DMA方式比较20142题×2分0题4分I/O接口,中断时CPU用于外设I/O时间占整个CPU时间的百分比20152题×2分0题4分磁盘,中断接口本章常考点:有关中断的基本概念、基本原理和基本方法,I/O方式中程序查询方式、程序中断方式和DMA方式的比较,以及这些I/O方式时CPU用于外设I/O时间占整个CPU时间的百分比等。可以能选择题的形式出现,也可能以应用题形式出现。二复习建议第一章应试技巧与方法:

直接根据本章所涉及知识点命题的题目一般不会超过一道题,且并无太多难点,但因为本章涉及的知识是整门课程最基础的知识,往往会作为其他试题的背景知识出现,如计算机的性能指标计算除在单项选择题出现外,越来越多地出现在综合应用题中,而且是综合应用题计算的基础,如果不掌握这些概念,可能使综合应用题无法下手或计算错误,所以不应该忽略这部分内容的复习。计算机性能指标

指令平均时钟数等于程序所含时钟周期数除以程序所含指令条数,即:CPI=

其中:IC表示程序所含总指令条数,Ii为第i种指令在程序中出现的次数。MIPS表示每秒执行多少百万条指令。MIPS定义为MIPS==MFLOPS表示每秒执行多少百万次浮点运算。MFLOPS定义为MFLOPS=GFLOPS、TFLOPS、PFLOPS单位通常意义K(Kilo)M(Mega)G(Giga)T(Tera)P(Peta)10310610910121015【例1.1】某计算机的时钟频率为400MHz,测试该计算机的程序使用4种类型的指令。每种指令的数量及所需指令时钟数(CPI)见表。则该计算机的指令平均时钟数为(1);该计算机的运算速度均为(2)MIPS。(1)A.1.85 B.1.93 C.2.36 D.3.75(2)A.106.7 B.169.5 C.207.3 D.216.2指令类型指令数目(条)每条指令需时钟数11600001230000232400044160008解答:(1)B、(2)C。分析:CPI=(160000×1×2×4×8)÷(160000)≈1.93运算速度=400MHz÷1.93≈207.3MIPS第二章应试技巧与方法:

这部分试题极少出现纯概念题,即使是单项选择题也往往需要经过计算才能得出结论。许多试题与程序设计密切相关,需要考生从程序员的视角出发,理解无符号数和有符号数、定点整数和浮点数等数据类型,特别是IEEE754标准这样的实用浮点数。考生复习时不仅要注意本章的知识点,还要注意与其余课程(如C语言设计设计、汇编语言程序设计等)和本课程其他章节相关的问题。原码、补码、反码、移码的特点与区别

通常,机器数有原码、补码和反码等3种形式,它们的共同特点是:二进制数的最高位为符号位,“0”表示正号,“1”表示负号。有些教材中,将移码也归入机器数的范畴,这也是可以的。事实上,移码确实是一种在计算机中使用的表示数的形式,不过它只能算作一种特殊的机器数,因为它只用于表示定点整数,不用于表示定点小数,而且它违背了符号位的表示原则,把它视为无符号数更为合适。【例2.1】如果某单精度浮点数、某原码、某补码、某移码的32位机器数均为0xF0000000。这些数从大到小的顺序是()。A.浮原补移 B.浮移补原 C.移原补浮 D.移补原浮解答:D。试题分析:这个机器数最高位为1,对于原码、补码、单精度浮点数而言为负数,对于移码而言为正数,所以移码数最大,而补码为

-228,原码为-(230+229+228),单精度浮点数为-1.0*297。十进制数的BCD码

BCD码是指二进制编码的十进制数,BCD码用4位二进制数来表示,它既具有二进制数的形式,又保持了十进制数的特点。4位二进制数可以组合出16种代码,能表示16种不同的状态,只需要使用其中的10种状态,就可以表示十进制数的0~9十个数码,而其他的6种状态为冗余状态。由于可以取任意的10种代码来表示10个数码,所以就可能产生很多种BCD码。

应当注意的是,有些读者可能会把8421码与BCD码混为一谈。产生这种误解的主要原因在于一些“微型计算机原理”的教材中常将BCD码当作8421码,由于“微型计算机原理”总是针对某种具体机型的,在80x86中使用的BCD码恰恰是8421码,所以在“微型计算机原理”中将BCD码当作8421码不能算作错误,但毕竟这是不准确的。“计算机组成原理”是不拘泥于某一种具体机型的,严格地说,8421码只是BCD码中的一种形式而已,不能说BCD码就是8421码。十进制数8421码2421码余3码Gray码01234567890000000100100011010001010110011110001001000000010010001101001011110011011110111100110100010101100111100010011010101111000000000100110010011011101010101110011000【例2.2】下列四位二进制编码中,()无论在8421码和余3码中均为非法码。A.0010 B.0101C.1011 D.1101解答:D。试题分析:1101在8421码和余3码中均为非法码。

定点数的表示范围与运算

为什么补码的表示范围比原码的表示范围要宽(多一个负数)呢?这个问题是与真值0的表示形式密切相关的。以字长为4位的二进制整数为例,一共有24种不同的代码,对于原码来说,因为有+0和-0两个不同的编码,所以总共可以表示7个正整数和7个负整数,正、负数范围相对零来说是对称的。而补码的+0和-0表示形式相同,这样就多出来一个代码(1000)。这个代码所对应的真值是-8,所以补码总共可以表示7个正整数和8个负整数,负数表示范围较正数表示范围宽,能多表示一个最负的数(绝对值最大的负数)。设机器字长4位(含1位符号位),以纯整数为例:原码或反码可表示的数

补码可表示的数(多表示一个负数)0+1+2+3+4+5+6+7-1-2-3-4-5-6-7+0-07个正数7个负数0+1+2+3+4+5+6+7-1-2-3-4-5-6-7-87个正数8个负数-8若机器字长有8位,则:原码定点整数表示范围为:-127~127补码定点整数表示范围为:-128~127【例2.3】-129的1字节、2字节补码分别是()。A.81H,0081H B.7FH,FF81H C.溢出,FF81H D.溢出,FF7FH解答:D。试题分析:1字节补码的表示范围为-128~127,所以-129在1字节补码表示为溢出;2字节补码的表示范围为-32768~32767,-129二进制表示为-10000001,所以2字节补码表示为1111111101111111。IEEE754标准

大多数计算机的浮点数采用IEEE754标准,其格式如下,IEEE754标准中有三种形式的浮点数。msEm以短浮点数为例讨论浮点代码与其真值之间的关系。最高位为数符位;其后是8位阶码,以2为底,阶码的偏置值为127;其余23位是尾数。为了使尾数部分能表示更多一位的有效值,IEEE754采用隐含尾数最高数位1(即这一位1不表示出来)的方法,因此尾数实际上是24位。应注意的是,隐含的1是一位整数(即位权为20),在浮点格式中表示出来的23位尾数是纯小数,并用原码表示。

【例2.4】有机器码C1BD0000H,是按IEEE754标准的单精度浮点数,该机器码所表示的浮点数是()。A.−23.625 B.+23.625C.−11.8125 D.−7.625解答:A。首先将十六进制数转换为二进制数,并分离出符号位、阶码和尾数。C1BD0000H=110000011011110100000000符号位=1,阶码=10000011,尾数=011110100000000则阶码真值(移码减去偏置值)=10000011–1111111=100所以浮点数=−1.0111101×24=−10111.101(二进制)=−23.625(十进制)浮点数的加减运算步骤(1)对阶 对阶的规则是:小阶向大阶看齐。(2)尾数加/减运算 对阶之后,就可以进行尾数加/减。(3)尾数结果规格化 规格化的尾数M应满足:

1/2≤|M|<1(4)舍入(5)溢出判断尾数结果规格化可能出现以下6种情况,即:①00.1xx…x②11.0xx…x③00.0xx…x④11.1xx…x⑤01.xxx…x⑥10.xxx…x

第①和②种情况,已是规格化数。第③和④种情况需要左规。尾数每左移一位,阶码相应减1(EC–1→EC),直至成为规格化数为止。第⑤和⑥种情况需要右规。尾数每右移一位,阶码相应加1(EC+1→EC)。【例2.5】浮点数加、减运算一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤。设浮点数的阶码和尾数均采用补码表示,且位数分别为5位和7位(均含2位符号位)。若有两个数X=27×29/32,Y=25×5/8,则用浮点加法计算X+Y的最终结果是()。

A.001111100010 B.001110100010 C.010000010001 D.发生溢出【答案】D。【分析】浮点数加、减运算一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤。第一步,对阶:第一个数X=27×29/32,浮点数格式为001110011101,第二个数Y=25×5/8,浮点数格式001010010100。对阶原则是小阶向大阶看齐,MY右移两位,EY+2,浮点数格式为001110000101。第二步,尾数相加:MZ=MX+MY=0100010,浮点数格式为001110100010。第三步,结果规格化:尾数需要进行一次右规,才能变成规格化数,MZ右移一位,EZ+1,浮点数格式为010000010001。第四步,判溢出:由于阶码符号位不同,所以发生溢出。 此题很容易误选为B、C选项。这是因为B、C两个选项本身并没有计算错误,只是它们不是最终结果,B选项少了第三和第四步,C选项少了第四步。第三章应试技巧与方法:本章内容较多,既包括主存储器,也包括Cache和虚拟存储器,是近年来考分占比相对最高的一章。灵活运用基本原理和基本方法,对实际问题进行分析、设计是考查的热点也是难点,试题一般比较灵活,需要考生仔细分析之后才能解答,切不要不认真审题,就着急下手。存储器的层次化结构

为了解决存储容量、存取速度和价格之间的矛盾,通常把各种不同存储容量、不同存取速度的存储器,按一定的体系结构组织起来,形成一个统一整体的存储系统。 从CPU的角度来看,n种不同的存储器(M1~Mn)在逻辑上是一个整体。其中:M1速度最快、容量最小、位价格最高;Mn速度最慢、容量最大、位价格最低。整个存储系统具有接近于M1的速度,相等或接近Mn的容量,接近于Mn的位价格。在多级存储层次中,最常用的数据在M1中,次常用的在M2中,最少使用的在Mn中。命中率H定义为CPU产生的逻辑地址能在M1中访问到的概率。

H=

两级存储层次的等效访问时间TA根据主存的启动时间有: 假设Cache访问和主存访问是同时启动的, TA=H×TA1+(1−H)×TA2

假设Cache不命中时才启动主存, TA=H×TA1+(1−H)×(TA1+TA2)=TA1+(1−H)×TA2

【例3.1】假设某计算机的存储系统由Cache和主存组成。某程序执行过程中访存1000次,其中访问Cache缺失(未命中)50次,则Cache的命中率是()。

A.5% B.9.5% C.50% D.95%【答案】D。【分析】Cache的命中率H=,程序访存次数(包括访问Cache的次数和访存主存的次数)N1+N2=1000次,其中访问Cache的次数N1为访存次数减去失效次数(1000−50=950)。所以H==0.95=95%。RAM和ROM的特点

存储器是整个存储系统的核心,通常分为随机存储器(RAM)和只读存储器(ROM)两大部分。RAM和ROM在主存中是统一编址的,ROM是系统程序区,RAM是用户程序区或系统程序工作区。RAM采用随机存取方式,所谓随机存取是指CPU可以对存储器中的内容随机地存取,CPU对任何一个存储单元的写入和读出时间是一样的,即存取时间相同,与其所处的物理位置无关。ROM可以看作RAM的一种特殊形式,其区别在于ROM中的内容只能读出而不能写入,所以ROM也采用随机存取方式。大小端方案

一个多字节的数据在按字节编址的主存中通常由两种排序方案——大端次序和小端次序。大端次序方案将最高有效字节存储在最小地址位置,小端次序方案将最低有效字节存储在最小地址位置。下图是32位的十六进制数12345678在存储器中的存储方式示意图。Intel80x86采用小端次序方案,IBM370、Motorola680x0和大多数RISC机器则采用大端次序方案。PowerPC既支持大端方案又支持小端方案。主存容量的扩展(1)位扩展 位扩展是指只在位数方向扩展(加大字长),而芯片的字数和存储器的字数是一致的。位扩展的连接方式是将各存储芯片的地址线、片选线和读写线相应地并联起来,而将各芯片的数据线单独列出。(2)字扩展 字扩展是指仅在字数方向扩展,而位数不变。字扩展将芯片的地址线、数据线、读写线并联,由片选信号来区分各个芯片。(3)字和位同时扩展 当构成一个容量较大的存储器时,往往需要在字数方向和位数方向上同时扩展,这将是前两种扩展的组合,实现起来也是很容易的。

存储器与CPU的连接,特别要注意地址线、数据线和控制线的连接。

地址线的连接:通常CPU的地址线的低位与存储芯片的地址线相连,CPU地址线的高位用做片选信号。数据线的连接:如果CPU的数据线数与存储芯片的数据线数不相等,必须对存储芯片进行位扩展,使其数据位数与CPU的数据线数相等。写命令线的连接:CPU的读写命令线一般直接与存储芯片的读写控制端相连。片选线的连接:那些未与存储芯片连接的高位地址必须和访存控制信号共同产生存储芯片的片选信号。通常还需要用到一些逻辑电路,如译码器及各种门电路,来产生片选有效信号。【例3.2】内存按字节编址,地址从0A4000H到0CBFFFH,共有()字节,若用存储容量为32K*8bit的存储器芯片构成该内存,至少需要()片。A.80K B.96K C.160K D.192KA.2 B.5 C.8 D.10解答:C、B。试题分析:CBFFFH+1-A4000H=28000H=160K160K*8/(32K*8)=5【例3.3】地址总线A0(高位)~A15(低位),用4K×4的存储芯片组成16KB存储器,则产生片选信号的译码器的输入地址线应该是()。A.A2A3 B.A0A1 C.A12A13 D.A14A15解答:A。试题分析:由于A15为地址线的低位,接入各芯片地址端的是地址线的低12位,即A4~A15,共有8个芯片(分为4组)组成16KB的存储器,由高2位地址线A2A3作为译码器的输入。

由高速缓冲存储器、主存储器、辅助存储器构成的三级存储系统可以分为两个层次,其中高速缓存和主存间称为Cache-主存存储层次(Cache存储系统);主存和辅存间称为主存-辅存存储层次(虚拟存储系统)。

Cache存储系统全部用硬件来调度,它对系统程序员和应用程序员都是透明的。虚拟存储系统需要通过操作系统来调度,它对系统程序员是不透明的,但对应用程序员是透明的。

高速缓冲技术就是利用程序的局部性原理,把程序中正在使用的部分存放在一个高速的容量较小的Cache中,使CPU的访存操作大多数针对Cache进行,从而使程序的执行速度大大提高。

Cache和主存之间的映射方式(1)全相联映射 全相联映射就是让主存中任何一个块均可以映射装入到Cache中任何一个块的位置上。全相联映射方式比较灵活,Cache的块冲突概率最低、空间利用率最高,但是地址变换速度慢,而且成本高,实现起来比较困难。(2)直接映射 直接映射是指主存中的每一个块只能被放置到Cache中唯一的一个指定位置,若这个位置已有内容,则产生块冲突,原来的块将无条件地被替换出去。直接映射是最简单的映射方式,成本低,易实现,地址变换速度快,但不够灵活,Cache的块冲突概率最高、空间利用率最低。(3)组相联映射 组相联映射将Cache空间分成大小相同的组,让主存中的一块直接映射装入Cache中对应组的任何一块位置上,即组间采取直接映射,而组内采取全相联映射。

组相联映像实际上是全相联映像和直接映像的折衷方案,当组数等于1(不再分组),组相联映射就变成为全相联映射;当组数等于Cache中块的数目,组相联映射就变成为直接映射。所以其优点和缺点介于全相联和直接映像方式的优缺点之间。【例3.4】容量为64块的Cache采用组相联映射方式,字块大小为128个字,每4块为一组。若主存4

096块,且以字编址,那么主存地址和主存标记的位数分别为()。A.16,6 B.17,6 C.18,8 D.19,8解答:D。试题分析:主存地址由主存标记、组号和块内地址3部分组成。因为主存容量4K

×128

=

512K字,故主存地址19位。又因为字块大小为128个字,故块内地址7位,Cache被分成64÷4

=

16组,故组号4位,主存标记19−4−7

=

8位。

在采用全相联映射和组相联映射方式从主存向Cache传送一个新块,而Cache中的空间已被占满时,就需要把原来存储的一块替换掉。常用的替换算法有下述3种:随机算法、先进先出(FIFO)算法和近期最少使用(LRU)算法。

最简单的替换算法是随机方法。随机法完全不管Cache块过去、现在及将来的使用情况,简单地根据一个随机数,选择一块替换掉。

FIFO算法是按调入Cache的先后决定淘汰的顺序,即在需要更新时,将最先进入Cache的块作为被替换的块。这种方法容易实现,而且系统开销小。其缺点是可能会把一些需要经常使用的程序块(如循环程序)也作为最早进入Cache的块替换掉。

LRU算法是把CPU近期最少使用的块作为被替换的块。这种替换方法需要随时记录Cache中各块的使用情况,以便确定哪个块是近期最少使用的块。LRU算法相对合理,但实现起来比较复杂,系统开销较大。

为了尽可能提高速度,可借鉴Cache的思路,将页表中最活跃的部分放在高速存储器中构成快表(TLB,又称为转换旁路缓冲器),快表扮演的角色是作为页表的Cache,对快表的查找和管理全用硬件来实现。快表一般很小,仅是主存中的页表(相对于快表称其为慢表)的一小部分。只有在快表中找不到(TLB缺失)时,才去访问慢表。【例3.5】虚拟存储系统中的页表有快表和慢表之分,下面关于页表的叙述中正确的是(

)。A.快表与慢表都存储在主存中,但快表比慢表容量小B.采用优化的搜索算法的查找速度快C.快表比慢表的命中率高,因此快表可以得到更多的搜索结果D.快表采用快速存储器件组成,按照查找内容访问,因此比慢表查找速度快解答:D分析:将当前最常用的页表信息存放在一个小容量的高速存储器中,称为快表,与快表相对应,存放在主存中的页表称为慢表。快表只是慢表的一个副本,而且只存放了慢表中很少的一部分。快表按内容访问,查找速度快。第四章应试技巧与方法:

寻址方式是本章中最重要的一节,考生应掌握各种不同寻址方式下的有效地址计算和操作数的获取方法,特别是对相对寻址方式要格外关注。目前,综合应用题多已突破章节的限制,很难严格地把一道题归入某一章,如2013年的第44题就涉及到第2章、第4章和第5章的相关知识点,2014年的第44题就涉及到第4章和第6章的相关知识点,要求考生全面的复习。

所谓寻址,指的是寻找操作数的地址或下一条将要执行的指令地址。每台计算机的指令系统都有自身的一套寻址方式,不同计算机的寻址方式的名称和含义也不同。

操作数可以在主存中,也可以在寄存器中,甚至可以在堆栈中。各种不同的寻址方式获取操作数的速度是不相同的,其中速度最快的是立即寻址,最慢的是多级间接寻址。各种数据寻址方式获得数据的速度(由快到慢)立即寻址寄存器寻址直接寻址寄存器间接寻址页面寻址变址寻址(基址寻址、相对寻址)一级间接寻址多级间接寻址【例4.1】假设寄存器R中的数值为200,主存地址为200和300的地址单元中存放的内容分别是300和400,若访问到的操作数是200,则寻址方式是()。A.直接寻址200 B.寄存器间接寻址(R)C.存储器间接寻址(200) D.寄存器寻址R解答:D。试题分析:直接寻址200和寄存器间接寻址(R)获得的操作数是300,存储器间接寻址(200)获得的操作数是400,寄存器寻址R获得的操作数是200。【例4.2】某机器字长16位,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。假定取指令时,每取一个字节PC自动加1。若某转移指令所在主存地址为2000H,相对位移量字段的内容为06H,则该转移指令成功转移后的目标地址是()。

A.2006H B.2007H C.2008H D.2009H【答案】C。【分析】主存按字节编址,取指令时,每取一个字节PC自动加1。由于转移指令由两个字节组成,取出这条转移指令之后的PC值等于2002H,所以转移指令成功转移后的目标地址PC=2000H+2+06H=2008H。 此题容易误选A或B。原因是没有考虑PC值的自动更新,或虽然考虑了PC要自动更新,但没有注意到这条转移指令是一条2字节的指令,PC值仅仅+1而不是+2。大部分RISC具有下列特点:

①指令总数较少(一般不超过100条);

②基本寻址方式种类少(一般限制在2~3种);

③指令格式少(一般限制在2~3种),而且长度一致;

④除取数和存数指令(Load/Store)外,大部分指令在单周期内完成;

⑤只有取数和存数指令能够访问存储器,其余指令的操作只限于在寄存器之间进行;

⑥CPU中通用寄存器的数目应相当多(32个以上,有的可达上千个);

⑦为提高指令执行速度,绝大多数采用硬连线控制实现,不用或少用微程序控制实现;

⑧采用优化的编译技术,力求以简单的方式支持高级语言。【例4.3】下列关于RISC的叙述中,错误的是()。

A.RISC普遍采用微程序控制器

B.RISC大多数指令在一个时钟周期内完成

C.RISC的内部通用寄存器数量相对CISC多

D.RISC的指令数、寻址方式和指令格式种类相对CISC少【答案】A。【分析】B、C、D3个选项都是RISC的特点之一,所以它们都是正确的,只有A选项是错误的,因为RISC的速度快,所以普遍采用硬布线控制器,而非微程序控制器。 采用排除法。第五章应试技巧与方法:

本章基本概念不少,但靠死记硬背这些基本概念是很难取得好成绩的。如数据通路的功能和基本结构,微程序控制器的微指令编码法,指令的流水线等都需要灵活运用基本原理和基本方法,对实际问题进行分析。这部分内容虽也有部分是纯概念题,但比例并不是很大。指令运行过程

一条指令运行过程可以分为3个阶段:取指令阶段、分析取数阶段和执行阶段。

计算机的基本工作过程就是取指令、取数、执行指令,然后再取下一条指令……如此周而复始,直至遇到停机指令或外来的干预为止。【例5.1】冯·诺依曼计算机中指令和数据均以二进制形式存放在存储器中,CPU区分它们的依据是()。

A.指令操作码的译码结果

B.指令和数据的寻址方式

C.指令周期的不同阶段

D.指令和数据所在的存储单元【答案】C。【分析】在冯·诺依曼结构计算机中指令和数据均以二进制形式存放在同一个存储器中,CPU可以根据指令周期的不同阶段来区分是指令还是数据,通常在取指阶段取出的是指令,其他阶段取出的是数据。区分指令和数据还有一个方法,即取指令和取数据时地址的来源是不同的,指令地址来源于程序计数器,而数据地址来源于地址形成部件或指令的地址码字段。 本题较容易误选为A,需要搞清楚的是,CPU只有在确定取出的是指令之后,才会将其操作码部分送去译码,因此是不可能依据译码的结果来区分指令和数据的。硬布线控制器与微程序控制器的区别

硬布线控制器采用组合逻辑技术实现,其微操作序列形成部件是由门电路组成的复杂树形网络。最大优点是速度快,但是微操作信号发生器的结构不规整,使得设计、调试、维修较困难,难以实现设计自动化。一旦微操作信号发生器构成之后,要想增加新的控制功能是不可能的。硬布线控制器与微程序控制器的区别

微程序控制器采用存储逻辑来实现,把微操作信号代码化,使每条机器指令转化成为一段微程序并存入一个专门的存储器(控制存储器)中,微操作控制信号由微指令产生。具有设计规整、调试、维修以及更改、扩充指令方便的优点,易于实现自动化设计,已成为当前控制器的主流。但是,由于它增加了一级控制存储器,所以指令执行速度比组合逻辑控制器慢。【例5.2】相对于微程序控制器,硬布线控制器的特点是()。

A.指令执行速度慢,指令功能的修改和扩展容易

B.指令执行速度慢,指令功能的修改和扩展难

C.指令执行速度快,指令功能的修改和扩展容易

D.指令执行速度快,指令功能的修改和扩展难【答案】D。【分析】在同样的半导体工艺条件下,硬布线(组合逻辑)控制器的速度比微程序控制器的速度快。这是因为硬布线控制器的速度主要取决于逻辑电路的延迟,而微程序控制器增加了一级控制存储器,执行的每条微指令都要从控存中读取,影响了速度。由于硬布线控制器一旦设计完成就很难改变,所以指令功能的修改和扩展难。数据通路与控制信号

数据通路是CPU中算术逻辑单元(ALU)、控制单元(CU)及寄存器之间的连接线路。不同计算机的数据通路可以是完全不同的,只有明确了数据通路,才能确定相应的微操作控制信号。事实上,要写出指令的微操作控制信号,首先需要给出相应的CPU结构和数据通路图,严格按要求建立起信息在计算机各部件之间流动的时间和空间关系,而不是凭空瞎编。

控制器在实现一条指令的功能时,总要把每条指令分解成一系列时间上先后有序的最基本、最简单的微操作,即微操作序列。微操作序列是与CPU的内部数据通路密切相关的,不同的数据通路就有不同的微操作序列。

一般是在给出CPU的结构及数据通路框图之后,再写出对应指令的微操作序列。如果CPU内部采用单总线结构,还要考虑总线冲突的问题,相应的微操作控制信号必须与给出的数据通路结构一致,且时序上要有先后顺序。微程序控制的有关概念

微程序控制的计算机涉及两个层次:一个是机器语言或汇编语言程序员所看到的传统机器层,包括机器指令、工作程序、主存储器;另一个是机器设计者看到的微程序层,包括微指令、微程序和控制存储器。

在微程序控制的计算机中,将控制部件向执行部件发出的各种控制命令叫做微命令,微命令有兼容性和互斥性之分,兼容性微命令是指那些可以同时产生并共同完成某一些微操作的微命令;而互斥性微命令是指在机器中不允许同时出现的微命令。兼容和互斥都是相对的,一个微命令可以和一些微命令兼容,而和另一些微命令互斥。对于单独一个微命令,谈论其兼容和互斥是没有意义的。

微指令是指为实现机器指令中某一步操作的若干个微命令的集合。一条机器指令对应一段由若干条微指令系列组成的微程序,机器指令由微指令进行解释并执行。

微指令的操作控制字段可分为直接控制法、最短编码法和字段编码法。

字段编码法是前两种方法的折中方法,这种方法将操作控制字段分为若干个小段,每段内采用最短编码法,段与段之间采用直接控制法。这种方法又可进一步分为字段直接编码法和字段间接编码法。

在字段编码法中,操作控制字段的分段并非是任意的,必须要遵循如下的原则:

①应把互斥性的微命令分在同一段内,兼容性的微命令分在不同段内。这样不仅有助于提高信息的利用率,缩短微指令字长,而且有助于充分利用硬件所具有的并行性,加快执行的速度。

②应与数据通路结构相适应。

③每个小段中包含的信息位不能太多,否则将增加译码线路的复杂性和译码时间。

④一般每个小段还要留出一个状态,表示本字段不发出任何微命令。因此当某字段的长度为3位时,最多只能表示7个互斥的微命令,通常用000表示不操作。流水工作原理

流水线是将一个较复杂的处理过程分成m个复杂程度相当、处理时间大致相等的子过程,每个子过程由一个独立的功能部件来完成,处理对象在各子过程连成的线路上连续流动。在同一时间,m个部件同时进行不同的操作,完成对不同对象的处理。

例如,将一条指令的执行过程分成取指令、指令译码、取操作数和执行4个子过程,分别由4个功能部件来完成,每个子过程所需时间为Δt。指令流水线的相关性(1)结构相关

由于多条指令在同一时刻争夺同一资源而形成的冲突称为结构相关,也称资源相关。(2)数据相关

后续指令要使用前面指令的操作结果,而这一结果尚未产生或者未送到指定的位置,从而造成后续指令无法运行的局面称为数据相关。(3)控制相关

控制相关主要是由转移指令引起的,在遇到条件转移指令时,存在着是顺序执行还是转移执行两种可能,需要依据条件的判断结果来选择其一。又称为指令相关。【例5.3】某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间的缓存时间)分别为90ns、80ns、70ns和60ns,则该计算机的CPU时钟周期至少是()。

A.90ns B.80ns C.70ns D.60ns【答案】A。【分析】这个指令流水线的各功能段执行时间是不相同的。由于各功能段的时间不同,计算机的CPU时钟周期应当以最长的功能段执行时间为准,也就是说,当流水线充满之后,每隔90ns可以从流水线中流出一条指令(假设不存在断流)。第六章应试技巧与方法:这章内容看似不多,且并无太多难点,但总线的性能指标等知识点除在单项选择题出现外,越来越多地出现在综合应用题中,而且是综合应用题计算的基础,如果不掌握这些概念,可能使综合应用题无法下手或计算错误,所以不应该忽略这些内容的复习。总线的性能指标①总线宽度,地址线的宽度表明了总线能直接访问存储器的地址空间范围,数据线的宽度表明了访问一次存储器或外设时能够交换的数据位数。②总线带宽,指总线的最大数据传输率,即每秒传输的字节数。总线时钟频率的高低决定了总线带宽的大小,有:总线带宽=总线宽度×总线频率③总线负载,指连接在总线上的最大设备数量。④总线分时复用,指在不同时段利用总线上同一个信号线传送不同信号,例如地址总线和数据总线共用一组信号线。⑤总线猝发传输,这是一种总线传输方式,即在一个总线周期中可以传输多个存储地址连续的数据。【例6.1】假设某系统总线在一个总线周期中并行传输4字节信息,一个总线周期占用2个时钟周期,总线时钟频率为10MHz,则总线带宽是

A.10MB/s B.20MB/s C.40MB/s D.80MB/s【答案】B。【分析】因为一个总线周期占用2个时钟周期,完成一个32位数据的传送。总线时钟频率为10MHz,时钟周期为0.1µs,总线周期占用2个时钟周期,为0.2µs。一个总线周期中并行传输4字节信息,则总线带宽是4÷0.2=20MB/s。第七章应试技巧与方法:本章的内容比较多,其中既有输入输出(I/O)设备,又有输入输出控制方式,灵活运用基本原理和基本方法,对实际问题进行分析、计算是考查的热点,虽也有部分是纯概念题,但比例不大,因此应该避免死记硬背基本概念,而学会融会贯通。磁盘平均存取时间

主要包括4部分:第一部分是指磁头从原先位置移动到目的磁道所需要的时间,称为定位时间或寻道时间;第二部分是指在到达目的磁道以后,等待被访问的记录块旋转到磁头下方的等待时间,称为旋转时间或等待时间;第三部分是信息的读写操作时间,也称为传输时间;最后是磁盘控制器的开销。由于寻找不同磁道和等待不同记录块所花的时间不同,所以通常取它们的平均值。传输时间和控制器的开销相对平均寻道时间Ts和平均等待时间Tw来说要小得多。【例7.1】某磁盘的转速为7

200r/min,传输速度为4MB/s,控制器开销为1ms。要保证读或写一个512B的扇区的平均时间为11.3ms,那么,该磁盘的平均寻道时间不超过()。A.3.9ms B.4.7ms C.5.5ms D.6.1ms解答:D。试题分析:磁盘的平均存取时间

=

平均寻道时间+平均等待时间+控制器开销+读写时间。平均等待时间等于磁盘旋转半圈的时间,60÷(2×7

200)≈4.17ms。读写时间

=

512B÷4MB/s≈0.122ms。平均寻道时间

=

磁盘的平均存取时间−平均等待时间−控制器开销−读写时间

=

11.3−4.17

1

0.122

=

6.008ms。程序中断

中断全过程指的是从中断源发出中断请求开始,CPU响应这个请求,现行程序被中断,转至中断服务程序,直到中断服务程序执行完毕,CPU再返回原来的程序继续执行的整个过程。中断全过程可分为5个阶段:①中断请求,②中断判优,③中断响应,④中断处理,⑤中断返回。CPU响应中断的条件

①CPU接收到中断请求信号。首先中断源要发出中断请求,同时CPU还要接收到这个中断请求信号。

②CPU允许中断。也就是开中断。通常,中断允许触发器由开中断指令来置位,由关中断指令或硬件自动使其复位。

③一条指令执行完毕。这是CPU响应中断请求的时间限制条件。一般情况下,CPU在一条指令执行完毕且没有更紧迫的任务时才能响应中断请求。

单重中断与多重中断在中断周期的隐指令操作和中断服务程序的执行中有所不同,下表列出了两者的区别。

多重中断单重中断

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论