《组成原理考研专业.ppt》由会员分享,可在线阅读,更多相关《组成原理考研专业.ppt(91页珍藏版)》请在三一办公上搜索。
1、组成原理考研专业课,主讲:张军鹏,一、专业课统考概述,满分150分中包括:1.单项选择题40小题*2分=80分2.综合应用题 7道大题,一、专业课统考概述,2009年专业课分值分布:其中:数据结构(1-10、4110、4215)组成原理(11-22、438、4413)操作系统(23-32、457、468)计算机网络(33-40、479)2010年专业课分值分布:其中:数据结构(1-11、4110、4213)组成原理(12-22、4311、4412)操作系统(23-32、457、468)计算机网络(33-40、479),一、专业课统考概述,教材计算机组成原理 唐朔飞 高等教育出版社计算机组成原理
2、 白中英 科学出版社教辅计算机组成原理考研指导 徐爱萍清华大学出版社计算机组成原理学习指导与习题解答 唐朔飞高等教育出版社,一、专业课统考概述,复习建议:1.正确理解考试大纲中规定的各种基本概念,掌握各个概念中的要点。2.将有关的概念和原理联系起来,不要孤立地学习各个部分的内容,比如数据表示、运算和运算器部件等,都要关联起来。3.把握重点、难点问题,分清主次,复习时紧紧抓住考试大纲。,二、考试大纲及分析,考试大纲变化 在新大纲中,计算机组成原理科目依旧占了45分,是考研复习中的关键科目。与去年的考试大纲相比,在微程序控制器部分加入了对微命令格式的考查,在考查目标方面也提出了更高的要求。,二、考
3、试大纲及分析,考查目标1、理解单处理器计算机系统中各部件的内部工作原理、组成结构以及相互连接方式,具有完整的计算机系统的整机概念。2、理解计算机系统层次化结构概念,熟悉硬件与软件之间的界面,掌握指令集体系结构的基本知识和基本实现方法。3、能够运用计算机组成的基本原理和基本方法,对有关计算机硬件系统中的理论和实际问题进行计算、分析,并能对一些基本部件进行简单设计。,二、考试大纲及分析,知识点解析在计算机组成原理方面,主要考查计算机系统基础知识、数据的表示和运算、存储器层次结构、指令系统、中央处理器、总线、输入输出系统。,二、考试大纲及分析,1、计算机系统概述学习计算机组成原理之前,我们先要了解计
4、算机的发展历程,搞清楚计算机的系统层次结构,包括计算机硬件的基本组成(五大部件的构成)、计算机软件的分类,以及计算机的基本工作过程。从体系结构上来看,有多种不同类型的计算机,那么这些不同的计算机谁好谁坏?如何评价?所以,还需要我们了解计算机性能评价指标和相关参数,包括吞吐量、响应时间;CPU时钟周期、主频、CPI、CPU执行时间;MIPS(Million Instructions Per Second):单字长定点指令平均执行速度,每秒处理的百万级的机器语言指令数。、MFLOPS(Million Floating-point Operations per Second,每秒百万个浮点操作)衡量
5、计算机系统的主要技术指标之一。,二、考试大纲及分析,2、数据的表示和运算我们日常所使用的是十进制数据,但在计算机中,除了十进制数据外,还有二进制、八进制、十六进制表示方法,我们要掌握这些进位计数制及其相互转换的方法,要搞清楚真值(实际的数值)和机器数(计算机中表示的数值)之间的关系,特别是负数的各种表示。另外,还要理解BCD码、字符与字符串的编码方法,以及数据的校验码(奇偶校验、CRC冗余校验等)。不管是哪种进制和校验方法,计算机中数据的表示有原码、反码、补码等方法,我们要搞清楚它们之间的关联与区别。,二、考试大纲及分析,2、数据的表示和运算 在计算机中对数据进行计算,分为定点表示和浮点表示。
6、在定点数的表示和运算方面,我们要掌握定点数的表示(无符号数的表示,有符号数的表示)和定点数的运算,包括定点数的位移运算、原码定点数的加/减运算、补码定点数的加/减运算、定点数的乘/除运算、溢出概念和判别方法。在浮点数的表示和运算方面,我们要掌握浮点数的表示(浮点数的表示范围和IEEE754标准)和浮点数的加/减运算。本知识点的最后一个考点就是算术逻辑单元ALU,我们要掌握串行加法器和并行加法器、算术逻辑单元ALU的功能和结构。,二、考试大纲及分析,3、存储器层次结构从整个计算机的存储体系来看,可以看成是一个“Cache内存外存”三级结构,在这个层次化结构中,我们要掌握存储器的分类以及各类存储器
7、的基本工作原理,包括半导体随机存取存储器(SRAM、DRAM)、只读存储器(ROM),掌握主存储器(内存)与CPU的连接和数据交换、双口RAM和多模块存储器,还有就是外存储器。在存储器这个知识点中,2个很重要的考点是高速缓冲存储器(Cache)和虚拟存储器。,二、考试大纲及分析,3、存储器层次结构在CPU和内存之间增加一层Cache,其目的是为了解决CPU和内存的速度匹配问题。在这一点,我们要掌握程序访问的局部性原理(时间局部性、空间局部性)、Cache的基本工作原理(命中率)、Cache和主存之间的映射方式、Cache中主存块的替换算法,以及Cache写策略。虚拟存储器的重点在于“虚拟”二字
8、,我们要掌握虚拟存储器的基本概念及种类,包括页式虚拟存储器、段式虚拟存储器、段页式虚拟存储器、TLB(快表)等,理解这些虚拟存储器的基本原理、碎片的处理,各种方法的优点和缺点。,二、考试大纲及分析,4、指令系统在指令系统知识点中,我们要掌握指令的格式(包括指令的基本格式、定长操作码指令格式、扩展操作码指令格式)和各种寻址方式,还要能够区分数据寻址和指令寻址的区别。本知识点的另外一个重要考点就是CISC(复杂指令系统计算机)和RISC(精简指令系统计算机),我们要掌握它们的基本概念、特征,以及它们之间的主要区别。,二、考试大纲及分析,5、中央处理器中央处理器,也就是我们常说的CPU。在这个知识点
9、,我们要掌握CPU的功能和基本结构,以及工作原理,具体包括指令执行过程、数据通路的功能和基本结构、控制器的功能和工作原理(硬布线控制器、微程序控制器)。特别是在微程序控制器考点中,要掌握微程序、微指令和微命令,微指令的编码方式,以及微地址的形式方式。在这个知识点中,一个最重要的考点是流水线(主要是指令流水线)。我们要搞清楚流水线的基本概念(包括超标量和动态流水线),为什么需要流水线,流水线有哪些优势,哪些因素会影响流水线,等等。在这一点,有可能出现计算题,例如,求流水线的周期、求指令的执行时间。有关流水线,还有一些评价指标,例如流水线的吞吐率、加速比等。,二、考试大纲及分析,6、总线总线就是一
10、组进行互连和传输信息(指令、数据和地址)的信号线,我们要掌握总线的基本概念,总线的分类,以及总线的组成和性能指标(例如,各类总线的宽度会影响哪些部件的性能等)。其次,就是要掌握总线仲裁方法(包括集中仲裁方式和分布仲裁方式)和总线操作和定时(包括同步定时方式和异步定时方式)。最后,就是要对总线的标准(正式标准和工业标准)有所了解,总线标准主要规定总线的机械结构规范、功能结构规范和电气规范。,二、考试大纲及分析,7、输入输出系统在输入输出(I/O)系统知识点,我们首先要掌握I/O系统的基本概念,理解各种外部设备,其中包括输入设备(键盘、鼠标、扫描仪等)、输出设备(显示器、打印机等)、外存储器(硬盘
11、存储器、磁盘阵列、光盘存储器等)。要理解这些设备的基本工作原理和常见的性能指标。例如显示器的分辨率、磁盘的读写时间等,特别是磁盘的有关读写过程(寻道时间、等待时间等),是一定要掌握的。其次,我们要掌握I/O接口(I/O控制器)的功能和基本结构、I/O端口及其编址方式。,二、考试大纲及分析,7、输入输出系统在I/O方式中,主要掌握程序查询方式、程序中断方式、DMA方式、通道方式的基本概念、工作原理和过程,以及这些方式之间的区别、各自的优点和缺点、应用场合。在这些方式中,以程序中断方式为考查重点,我们要掌握中断的基本概念、中断响应过程、中断处理过程、多重中断和中断屏蔽的概念。,三、2009年考研真
12、题,11.冯诺依曼计算机中指令和数据均以二进制形式存放在存储器中,CPU区分它们的依据是A指令操作码的译码结果B.指令和数据的寻址方式C指令周期的不同阶段D.指令和数据所在的存储单元解析:冯诺依曼计算机中指令和数据均以二进制形式存放在存储器中,CPU区分它们的依据是指令周期的不同阶段。通常完成一条指令可分为取指阶段和执行阶段。在取指阶段通过访问存储器可将指令取出;在执行阶段通过访问存储器可以将操作数取出。这样,虽然指令和数据都是以二进制代码形式存放在存储器中,但 CPU 可以判断在取指阶段访问存储器取出的二进制代码是指令;在执行阶段访存取出的二进制代码是数据。,三、2009年考研真题,12.一
13、个C语言程序在一台32位机器上运行。程序中定义了三个变量xyz,其中x和z是int型,y为short型。当x=127,y=-9时,执行赋值语句z=x+y后,xyz的值分别是 AX=0000007FH,y=FFF9H,z=00000076H B.X=0000007FH,y=FFF9H,z=FFFF0076H CX=0000007FH,y=FFF7H,z=FFFF0076H D.X=0000007FH,y=FFF7H,z=00000076H 解析:问题在y和z上,负数的补码表示。,三、2009年考研真题,x=127,y=-9,z=x+y=118 结合题干及选项可知,int 为 32 位,short
14、 为 16 位;又 C 语言的数据在内存中为补码形式,故 x、y的机器数写为 0000007F、FFF7H执行 z=x+y 时,由于 x 是 int 型,y 为 short 型,故需将 y 的类型强制转换为 int,在机器中通过符号 位扩展实现,由于 y 的符号位为 1,故在 y 的前面添加 16 个 1,即可将 y 强制转换为 int 型,其十六进制形式为 FFFFFFF7H;然后执行加法,即 0000007FH+FFFFFFF7H=00000076H,其中最高位的进位 1 自然丢弃。故选 D。,三、2009年考研真题,十进制转换:十进制转任意进制的通用方法是:除x取余倒排法(x代表进制数)
15、。如:将十进制数76转换成任意进制1.转成二进制76/2.0=38/2.0=19/2.1=9/2.1=4/2.0=2/2.0=1/2.176(10)=1001100(2)2.转成八进制76/8.4=9/8.1=1/8.176(10)=114(8)3.转成十六进制76/16.12=4/16.476(10)=4C(16),B:二进制数。Q:八进制数。D:十进制数。H:十六进制数。负数用十六进制和八进制怎么表示?使用补码(二进制),而且还要指定字长比如说一个二字节整型的-2 就应该是:11111111 11111110再转化其它进制十六进制:FFFE八进制:177776,三、2009年考研真题,13
16、.浮点数加减运算过程一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤。设浮点数的阶码和尾数均采用补码表示,且位数分别为 5 位和 7 位(均含 2 位符号位)。若有两个数 X=27 29/32,Y=255/8,则用浮点加法计算 X+Y 的最终结果是。A00111 1100010B00111 0100010C01000 0010001D发生溢出,三、2009年考研真题,解析:根据题意,X=27 29/32,Y=255/8X 记为 00,111;00,11101(分号前阶码,分号为尾数)Y 记为 00,101;00,10100;首先对阶,X、Y 阶码相减,即 00,111-00,101=00,1
17、11+11,0111=00,010,可知 X 阶码比 Y价码大 2,根据小阶对大阶原则,将 Y 的阶码加 2,尾数右移 2 位,可得 Y 为 00,111;00,00101;尾数相加,即 00,11101+00,00101=01,00010,尾数相加结果符号位为 01,故需进行右规;规格化,将尾数右移 1 位,阶码加 1,得 X+Y 为 01,000;00,1000,阶码符号位为 01,说明发生溢出,故选 D。,三、2009年考研真题,14.某计算机的 Cache 共有16块,采用2路组相联映射方式(即每组2块)。每个主存块大小32字节,按字节编址。主存129号单元所在主存块应装入到的 Cac
18、he 组号是。A0B2C4D6,三、2009年考研真题,解析:C。考察 Cache 与主存之间的映射方式。由于 Cache 共有16块,采用2路组相联,因此共有8组,0,1,2,.,7。并且主存的某一字块按模8映像到 Cache 某组的任一字块中,即主存的第0,8,16.字块可以映像到 Cache 第0组2个字块的任一字块中,而129号单元是位于第4块主存块中,因此将映射到 Cache 第4组2个字块的任一字块中。,三、2009年考研真题,注意:由于在计算机系统结构中和计算机组成原理的某些教材中介绍的组相联跟此处的组相联并不相同,导致部分考生理解错题目。考生应以真题为准,以后再出现类似题目,应
19、以此种解答为标准。,三、2009年考研真题,15某计算机主存容量为64KB,其中 ROM 区为4KB,其余为 RAM 区,按字节编址。现要用2K8位的ROM 芯片和4K4位的 RAM 芯片来设计该存储器,则需要上述规格的 ROM 芯片数和 RAM 芯片数分别是。A1、15B2、15C1、30D2、30,三、2009年考研真题,解析:D。考察存储器的扩展。首先确定 ROM 的个数,ROM 区为4KB,选用2K8的 ROM 芯片,需要 2 片,采用字扩展方式;60KB 的RAM,选用4K4的RAM芯片,需要15*2=30片,采用字和位同时扩展方式。,三、2009年考研真题,16某机器字长 16 位
20、,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。假定取指令时,每取一个字节 PC 自动加 1。若某转移指令所在主存地址为 2000H,相对位移量字段的内容为 06H,则该转移指令成功转移以后的目标地址是_。A2006HB.2007HC.2008HD.2009H,三、2009年考研真题,解析:C。考察相对寻址。相对寻址 EA=(PC)+A,首先要求的是取指令后 PC 的值。转移指令由两个字节组成,每取一个字节PC 自动加 1,因此取指令后 PC 值为 2002H故 EA=(PC)+A=2002 H+06 H=2008H,故答案为 C。,三、
21、2009年考研真题,17下列关于 RISC 的叙述中,错误的是。ARISC 普遍采用微程序控制BRISC 大多数指令在一个时钟周期内完成CRISC 的内部通用寄存器数量相对 CISC 多DRISC 的指令数、寻址方式和指令格式种类相对 CISC 少,三、2009年考研真题,解析:A。考察 RISC 的特性。相对于 CISC 计算机,RISC 计算机的特点:指令条数少;指令长度固定,指令格式和寻址种类少;只有取数/存数指令访问存储器,其余指令的操作均在寄存器之间进行;CPU 中通用寄存器多;大部分指令在一个或者小于一个机器周期内完成;以硬布线逻辑为主,不用或者少用微程序控制。,三、2009年考研
22、真题,18.某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间的缓存时间)分别为 90 ns、80 ns、70 ns、和 60 ns,则该计算机的 CPU 时钟周期至少是。A90 nsB80 nsC70 nsD60 ns,三、2009年考研真题,解析:A。考察流水线中时钟周期的特性。时钟周期应以最长的执行时间为准,否则用时长的流水段的功能将不能正确完成。,三、2009年考研真题,19.相对于微程序控制器,硬布线控制器的特点是。A指令执行速度慢,指令功能的修改和扩展容易B指令执行速度慢,指令功能的修改和扩展难C指令执行速度快,指令功能的修改和扩展容易D指令执行速度快,
23、指令功能的修改和扩展难。,三、2009年考研真题,解析:D。考察硬布线控制器的特点。硬布线控制器的速度取决于电路延迟,所以速度快;微程序控制器采用了存储程序原理,每条指令都要访控存,所以速度慢。硬布线控制器采用专门的逻辑电路实现,修改和扩展困难。,三、2009年考研真题,20.假设某系统总线在一个总线周期中并行传输 4 字节信息,一个总线周期占用 2 个时钟周期,总线时钟频率为 10MHz,则总线带宽是_。A.10MB/SB.20MB/SC.40 MB/SD.80MB/S,三、2009年考研真题,解析:B。本题考查对总线基本概念的理解。总线带宽是指单位时间内总线上可传输数据的位数,通常用每秒钟
24、传送信息的字节数来衡量,单位可用字节/秒(Bps)表示。根据题意可知,在 2*1/10MHz 秒内传输了 4B,所以 4B*10MHz/2=20MB/S。,三、2009年考研真题,21.假设某计算机的存储系统由 Cache 和主存组成,某程序执行过程中访存1000次,其中访问 Cache缺失(未命中)50次,则 Cache 的命中率是。A.5%B.9.5%C.50%D.95%,三、2009年考研真题,解析:D。,命中率CPU所要访问的信息在cache中的比率,h=Nc/(Nc+Nm),Nc:cache完成存取次数,Nm:主存完成存取总次数,三、2009年考研真题,22.下列选项中能引起外部中断
25、的事件是_。A键盘输入B除数为 0C浮点运算下溢D访存缺页解析:A。能引起外部中断的事件是:键盘输入(人的干预)或外请求。(外中断都是强迫中断),三、2009年考研真题,43某计算机的 CPU 主频为 500MHz,CPI 为 5(即执行每条指令平均需 5 个时钟周期)。假定某外设的数据传输率为 0.5MB/s,采用中断方式与主机进行数据传送,以 32 位为传输单位,对应的中断服务程序包含 18 条指令,中断服务程序的其他开销相当于 2 条指令的执行时间。请回答下列问题,要求给出计算过程。(1)在中断方式下,CPU 用于该外设 I/O 的时间占整个 CPU 时间的百分比是多少?(2)当该外设的
26、数据传输率达到 5MB/s 时,改用 DMA 方式传送数据。假定每次 DMA 传送块大小为5000B,且 DMA 预处理和后处理的总开销为 500 个时钟周期,则 CPU 用于该外设 I/O 的时间占整个 CPU时间的百分比是多少?(假设 DMA 与 CPU 之间没有访存冲突),三、2009年考研真题,(1)在中断方式下,CPU 用于该外设 I/O 的时间占整个 CPU 时间的百分比是多少?解析:CPU频率为500MHz,CPI为5,外设传输率0.5M/s,32位传输,中断服务程序18+2=20条指令执行时间。按题意,外设每秒传送 0.5MB,中断时每次传送 4B。中断方式下,CPU 每次用于
27、数据传送的时钟周期为:5*18+5*2=100.为达到外设 0.5MB/s 的数据传输率,外设每秒申请的中断次数为:0.5MB/4B=125000。1 秒钟内用于中断的开销:100*125000=12500000=12.5M 个时钟周期。CPU 用于外设 I/O 的时间占整个 CPU 时间的百分比:12.5M/500M=2.5%。,三、2009年考研真题,(2)当该外设的数据传输率达到 5MB/s 时,改用 DMA 方式传送数据。假定每次 DMA 传送块大小为5000B,且 DMA 预处理和后处理的总开销为 500 个时钟周期,则 CPU 用于该外设 I/O 的时间占整个 CPU时间的百分比是
28、多少?解析:当外设数据传输率提高到 5MB/s 时改用 DMA 方式传送,每次 DMA 传送 5000B,1 秒钟内需产生的 DMA 次数:5 MB/5000 B=1000。CPU 用于DMA处理的总开销:1000*500=0.5M个时钟周期。CPU 用于外设 I/O 的时间占整个 CPU 时间的百分比:0.5M/500M=0.1%。,三、2009年考研真题,43某计算机字长 16 位,采用 16 位定常指令字结构,部分数据通路结构如下图所示,图中所有控制信号为 1 时表示有效、为 0 时表示无效,例如控制信号 MDRinE 为 1 表示允许数据从 DB 打入 MDR,MDRin 表示允许从内
29、总线打入 MDR。假设 MDR 的输出一直处于使能状态。加法指令“ADD(R1),R0”功能为(R0)+(R1)(R1),即将 R0 中的数据与 R1 的内容所指主存单元的数据相加,并将结果送入 R1 的内容所指主存单元中保存。,三、2009年考研真题,三、2009年考研真题,下表给出了上述指令取指和译码阶段每个节拍(时钟周期)的功能和有效控制信号,请按表中描述方式用表格列出指令执行阶段每个节拍的功能和有效控制信号。,三、2009年考研真题,解析:一条指令的执行过程通常由取指和执行完成,本题中取指用 3 个节拍、译码用 1 个节拍,执行加法运算并把结果写入主存如何完成呢?包括划分执行步骤、确定
30、完成的功能、要提供的控制信号,这是本题要测试的内容。为回答这个问题,首先要看清图中给出的部件组成情况和信息传送的路径。,三、2009年考研真题,解析:要完成的功能(R0)+(R1)(R1),图中:(1)R0、R1 都有送自己内容到内总线的路径,控制信号分别是 R0out 和 R1out;(2)ALU 加运算,2 个数据由工作寄存器 A 和内总线提供,控制信号是 Add;A 只接收内总线的内容,控制信号是 Ain;结果需存 AC,控制信号是 ACin;AC 的内容可送内总线,控制信号是 ACout;(3)PC 可接收内总线的内容,还可增 1,控制信号是 PCin 和 PC+1,PC 的内容可送内
31、总线,控制信号是 PCout;,三、2009年考研真题,(4)指令寄存器 IR 可接收内总线的内容,控制信号是 IRin;(5)读写存储器时,地址由 MAR 经 AB 提供,MAR 只接收总线上的信息,控制信号是 MARin;(6)读存储器,提供读命令 MemR,并通过 DB 送入 MDR,控制信号是 MDRinE;MDR 的内容可送入总线,控制信号是 MDRout;(7)写存储器,提供写命令 MemW,数据由 MDR 通过 DB 送到存储器的数据引脚,控制信号是MDRoutE;,三、2009年考研真题,划分执行步骤、确定每一步完成的功能、需要提供的控制信号。这是由指令应完成的功能和计算机硬件
32、的实际组成情况和信息传送的可用路径共同决定的,基本原则是步骤越少越好。硬件电路要能支持,可以有多种方案,解题时应参照以给出的答题格式,即取指和译码阶段的那张表的内容,但不必把表已有的内容再抄一遍。,三、2009年考研真题,(1)执行相加运算,需把存储器中的数据读出,为此首先送地址,将 R1 的内容送 MAR,控制信号 是 R1out、MARin。(2)启动读主存操作,读出的内容送入 MDR,控制信号是 MemR、MDRinE。还可同时把 R0 的内容经内总线送入 A,用到的控制信号是 R0out、Ain。(3)执行加法运算,即 A 的内容与 MDR 的内容相加,结果保存到 AC,控制信号是 M
33、DRout、Add、Acin。(4)要把 AC 的内容写入主存,由于 R1 的内容已经在 MAR 中,地址已经有了,但需要把写入的数据(已经在 AC 中)经内总线送入 MDR,控制信号是 ACout、MDRin。(5)给出写主存的命令,把 MDR 的内容经 DB 送存储器的数据线引脚,执行写操作,控制信号是MDRoutE、MemW。,三、2009年考研真题,这几个步骤是有先后次序的,前面的完成了,下一步才可以执行,也保证了不会产生硬件线路的冲突。请注意,使用最为频繁的是内总线,它在任何时刻只能接收一个输入数据,并且向内总线发送信息的电路只能以三态门器件连接到内总线,5 个向内总线发送信息的控制
34、信号(ACout,PCout,R0out,R1out,MDRout)最多只能有一个为 1,其他 4 个必须全为 0,或者 5 个全为 0。仔细看一下,发现可以把第 2 个步骤的操作划分到两个步骤中完成,一个步骤中安排 MDR 接收从存储器中读出的内容,到另外一个步骤实现 R0 的内容送入 A,这多用了一个操作步骤,指令的执行速度会变慢。有些解题者在写存储器之前,还会再执行一次把 R1 的内容送 MAR,尽管无此必要,但不属于原理上的错误。,三、2009年考研真题,参考答案一,“A(R0)”也可在 C7:“AC(MDR)+(A)”之前单列的一个时钟周期内执行。,三、2009年考研真题,参考答案二
35、,四、2010年考研真题,12.下列选项中,能缩短程序执行时间的措施是。提高 CPU 时钟频率,优化数据通路结构,对程序进行编译优化A仅和B仅和C仅和D,,四、2010年考研真题,解析:D。考察计算机性能指标。.CPU 的时钟频率,也就是 CPU 主频率,一般说来,一个时钟周期内完成的指令数是固定的,所以主频越高,CPU 的速度也就快,程序的执行时间就越短。.数据在功能部件之间传送的路径称为数据通路,数据通路的功能是实现 CPU 内部的运算器和寄存器以及寄存器之间的数据交换。优化数据通路结构,可以有效提高计算机系统的吞吐量,从而加快程序的执行。.计算机程序需要先转化成机器指令序列才能最终得到执
36、行,通过对程序进行编译优化可以得到更优的指令序列,从而使得程序的执行时间也越短。,四、2010年考研真题,13.假定有 4 个整数用 8 位补码分别表示 r1=FEH,r2=F2H,r3=90H,r4=F8H,若将运算结果存放在一个 8 位寄存器中,则下列运算会发生溢出的是。Ar1 x r2Br2 x r3Cr1 x r4Dr2 x r4,四、2010年考研真题,解析:B。考察定点数的运算。用补码表示时 8 位寄存器所能表示的整数范围为-128+127。由于 r1=FEH,r2=F2H,r3=90H,r4=F8H 即:r1=-2,r2=-14,r3=-112,r4=-8,则 r2r3=1568
37、,结果溢出。,四、2010年考研真题,14.假定变量 i,f,d 数据类型分别为 int,float 和 double(int 用补码表示,float 和 double 分别用 IEEE754单精度和双精度浮点数据格式表示),已知 i=785,f=1.5678,d=1.5 若在 32 位机器中执行下列关系表达式,则结果为真的是。(I)i=(int)(float)i(II)f=(float)(int)f(III)f=(float)(double)f(IV)(d+f)-d=fA仅 I 和 IIB仅 I 和 IIIC仅 II 和 IIID仅 III 和 IV,四、2010年考研真题,解析:B。考察不
38、同精度的数在计算机中的表示方法及其相互装换。i=785,f=1.5678,d=1.5(I)i=(int)(float)i(II)f=(float)(int)f(III)f=(float)(double)f(IV)(d+f)-d=f由于(int)f=1,小数点后面 4 位丢失,故 II 错。IV 的计算过程是先将 f 转化为双精度浮点数据格式,然后进行加法运算,故(d+f)-d 得到的结果为双精度浮点数据格式,而 f 为单精度浮点数据格式,故 IV错。,四、2010年考研真题,15假定用若干个2k*4位芯片组成一个8k*8位存储器,则地址0B1FH 所在芯片的最小地址是。A.0000HB.060
39、0HC.0700HD.0800 H,四、2010年考研真题,解析:D。考察存储器的组成和设计。用 2K4 位的芯片组成一个 8K8 位存储器,每行中所需芯片数为 2,每列中所需芯片数为 4,各行芯片的地址分配为:第一行(2个芯片并联)0000H07FFH第二行(2个芯片并联)0800H0FFFH第三行(2个芯片并联)1000H17FFH第四行(2个芯片并联)1800H1FFFH于是地址0B1FH 所在芯片的最小地址即为0800H。,四、2010年考研真题,16下列有关 RAM 和 ROM 的叙述中,正确的是。I RAM 是易失性存储器,ROM 是非易失性存储器II RAM 和 ROM 都是采用
40、随机存取的方式进行信息访问III RAM 和 ROM 都可用作 CacheIV RAM 和 ROM 都需要进行刷新A仅 I 和 IIB仅 II 和 IIIC仅 I,II,IIID仅 II,III,IV,四、2010年考研真题,解析:A。考察半导体随机存取存储器。一般 Cache 采用高速的 SRAM 制作,比 ROM 速度快很多,因此 III 是错误的,排除法即可选 A。RAM 需要刷新,而 ROM 不需要刷新。,四、2010年考研真题,17下列命令组合情况中,一次访存过程中,不可能发生的是。ATLB 未命中,Cache 未命中,Page 未命中 BTLB 未命中,Cache 命中,Page
41、命中 CTLB 命中,Cache 未命中,Page 命中 DTLB 命中,Cache 命中,Page 未命中。,四、2010年考研真题,解析:D。考察 TLB、Cache 及 Page 之间的关系。TLB 即为快表,快表只是慢表(Page)的小小副本,因此 TLB 命中,必然 Page 也命中,而当 Page命中,TLB 则未必命中,故 D 不可能发生;而 Cache 的命中与否与 TLB、Page 的命中与否并无必然联系。,四、2010年考研真题,18.下列寄存器中,汇编语言程序员可见的是。A存储器地址寄存器(MAR)B程序计数器(PC)C存储区数据寄存器(MDR)D指令寄存器(IR),四、
42、2010年考研真题,解析:B。考察 CPU 内部寄存器的特性。汇编程序员可以通过指定待执行指令的地址来设置 PC 的值,而 IR,MAR,MDR 是 CPU 的内部工作寄存器,对程序员不可见。,四、2010年考研真题,19.下列不会引起指令流水阻塞的是。A数据旁路B数据相关C条件转移D资源冲突,四、2010年考研真题,解析:A。考察指令流水线的基本概念。有三种相关可能引起指令流水线阻塞:1.结构相关,又称资源相关;2.数据相关;3.控制相关,主要由转移指令引起。数据旁路技术,其主要思想是不必待某条指令的执行结果送回到寄存器,再从寄存器中取出该结果,作为下一条指令的源操作数,而是直接将执行结果送
43、到其他指令所需要的地方,这样可以使流水线不发生停顿。,四、2010年考研真题,20.下列选项中的英文缩写均为总线标准的是。A.PCI、CRT、USB、EISA B.ISA、CPI、VESA、EISA C.ISA、SCSI、RAM、MIPSD.ISA、EISA、PCI、PCI-Express,四、2010年考研真题,解析:D。考察总线标准,目前典型的总线标准有:ISA、EISA、VESA、PCI、PCI-Express、AGP、USB、RS-232C 等。,四、2010年考研真题,21.单级中断系统中,中断服务程序执行顺序是。I 保护现场 II 开中断III 关中断IV 保存断点V 中断事件处理
44、VI 恢复现场VII 中断返回AI-V-VI-II-VIIBIII-I-V-VIICIII-IV-V-VI-VIIDIV-I-V-VI-VII,四、2010年考研真题,解析:A。考察中断处理过程。中断的处理过程为:1.关中断;2.保存断点;3.识别中断源;4.保存现场;5.中断事件处理;(开中断、执行中断服务程序、关中断)6.恢复现场;7.开中断;8.中断返回。其中,13 步由硬件完成,48 由中断服务程序完成,正确选项为 A。,四、2010年考研真题,22.假定一台计算机的显示存储器用 DRAM 芯片实现,若要求显示分辨率为 1600*1200,颜色深度为24 位,帧频为 85HZ,现实总带
45、宽的 50%用来刷新屏幕,则需要的显存总带宽至少约为_。A245MbpsB979MbpsC1958MbpsD7834Mbps,四、2010年考研真题,解析:D。考察显示器相关概念。刷新所需带宽=分辨率色深帧频=1600120024b85HZ=3916.8Mbps显存总带宽的 50%用来刷屏,于是需要的显存总带宽为 3916.8/0.5=7833.6Mbps 7834Mbps。,四、2010年考研真题,43.某计算机字长为16位,主存地址空间大小为128KB,按字编址,采用定长指令格式,指令各字段定义如下:,注:(X)表示有存储器地址 X 或寄存器 X 的内容,请回答下列问题:,四、2010年考
46、研真题,该指令系统最多可有多少条指令?该计算机最多有多少个通用寄存器?存储器地址寄存器(MAR)和存储器数据寄存器(MDR)至少各需要多少位?转移指令的目标地址范围是多少?若操作码0010B 表示加法操作(助记符为 add),寄存器 R4和 R5的编号分别为100B 和101B,R4的内容为1234H,R5的内容为5678H,地址1234H 中的内容为5678H,5678H 中的内容为1234H,则汇编语言为 add(R4),(R5)+(逗号前为原操作数,逗号后为目的操作数)对应的机器码是什么(用十六进制表示)?该指令执行后,哪些寄存器和存储单元的内容会改变?改变后的内容是什么?,四、2010
47、年考研真题,解答:该指令系统最多可有多少条指令?该计算机最多有多少个通用寄存器?存储器地址寄存器(MAR)和存储器数据寄存器(MDR)至少各需要多少位?指令操作码占 4 位,则该指令系统最多可以有 24=16 条指令;指令操作数占 6 位,寻址方式占 3位,于是寄存器编号占 3 位,该计算机最多可以有 23=8 个通用寄存器;主存容量 128KB,按字编址,计算机字长为 16 位,划分为 128KB/2B=216 个存储单元,故 MDR 和 MAR 至少各需 16 位;,四、2010年考研真题,解答:转移指令的目标地址范围是多少?PC 和 Rn 可表示的地址范围均为 0216-1,而主存地址空
48、间为 216,故转移指令的目标地址范围 是 0216-1.,四、2010年考研真题,若操作码0010B 表示加法操作(助记符为 add),寄存器 R4和 R5的编号分别为100B 和101B,R4的内容为1234H,R5的内容为5678H,地址1234H 中的内容为5678H,5678H 中的内容为1234H,则汇编语言为 add(R4),(R5)+(逗号前为原操作数,逗号后为目的操作数)对应的机器码是什么(用十六进制表示)?该指令执行后,哪些寄存器和存储单元的内容会改变?改变后的内容是什么?(3)汇编语句 add(R4),(R5)+对应的机器码为 0010 0011 0001 0101B=2
49、315H;该指令执行后,累加寄存器 AC、寄存器 R5、地址为 1234H 的存储单元的内容会改变,改变后的内容分别为:(AC)=(R4)+(R5)=5678H+1234H=68ACH;(R5)=(R5)+1=5678H+1H=5679H;(5678H)=(ACC)=68ACH,四、2010年考研真题,44.某计算机的主存地址空间为 256MB,按字节编址,指令 Cache 分离,均有 8 个 Cache 行,每个 Cache行的大小为 64B,数据 Cache 采用直接映射方式,现有两个功能相同的程序 A 和 B,其伪代码:,假定 int 类型数据用32位补码表示,程序编译时 i,j,sum
50、 均分配在寄存器中,数据 a 按行优先方式存放,其地址为320(十进制数),请回答下列问题,要求说明理由或给出计算过程。,四、2010年考研真题,问题:(1)若不考虑用于 cache 一致性维护和替换算法的控制位,则数据 Cache 的总容量是多少?(2)数组元素 a031和 a11各自所在的主存块对应的 Cache 行号分别是多少(Cache 行号从0开始)?(3)程序 A 和 B 的数据访问命中率各是多少?那个程序的执行时间更短?,四、2010年考研真题,解答:(1)若不考虑用于 cache 一致性维护和替换算法的控制位,则数据 Cache 的总容量是多少?(1)数据 Cache 有 8