1、 2009 年全国硕士研究生计算机学科入学统一考试 计算机组成原理试题分析 一、选择题 (每个题 2 分) 11冯 诺依曼计算机中指令和数据均以二进制形式存放在存储器中, CPU 区分它们的依据是 A指令操作码的译码结果 B指令和数据的寻址方式 C 指令周期的不同阶段 D 指令和数据所在的存储单元 答案 C 解析 1、指令执行步骤,在取指期间取来的是指令,读数据期间读来的是数据; 2、指令和数据性质上的区别,虽然二者都 用二进制表示,但属于完全不同性质的信息,数据是计算机加工处理的“原材料”,指令是告知计算机运行功能和执行步骤的命令类信息。 12 一个 C 语言程序在一台 32 位机器上运行。
2、程序中定义了三个变量 x、 y 和 z,其中 x 和z 为 int 型, y 为 short 型。当 x = 127, y = -9 时,执行赋值语句 z = x+y 后, x、 y 和 z 的值分别是 A x = 0000007FH, y = FFF9H, z = 00000076H B x = 0000007FH, y = FFF9H, z = FFFF0076H C x = 0000007FH, y = FFF7H, z = FFFF0076H D x = 0000007FH, y = FFF7H, z = 00000076H 答案 D 解析 1、十进制整数到二进制的转换,数据的补码表示
3、; 2、补码加法运算, 2 两个不同位数的补码数相加时需要进行符号扩展; X=127, X补 =0000007FH( 32 位整数),运算后其值不变 Y= 9, Y补 =FFF7H ( 16 位整数),运算后其值不变 Z补 = X 补 +Y 补 =0000007FH+FFFFFFF7H=00000076H 3、解题技巧,也可先求出 127+( 9)=118,再变成补码后去与可供选择的答案对比。 13 浮点数加、减运算过程一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤。设浮点数的阶码和尾数均采用补码表示,且位数分别为 5 位和 7 位(均含 2 位符号位)。若有两个数 X = 2729/32
4、, Y = 255/8,则用浮点加法计算 X+Y 的最终结果是 A 00111 1100010 B 00111 0100010 C 01000 0010001 D发生溢出 答案 D 解析 1、 十进制小数到二进制的转换,小数与整数的补码表示; 2、浮点数的阶码(整数)、尾数(尾数)的表示,规格化的概念; 3、浮点数的加法运算与结果溢出检查; X浮 =00111 0011101, Y浮 =00101 0010100=00111 0000101 X 和 Y 的尾数相加的 0100010,应规格化,成为 0010001,阶码要加 1,将变成 8,但阶码的数值位用 3 位补码表示,不能表示正 8,表明
5、运算结果是溢出了。 4、解题技巧 A) 也可先把 25 5/8 变成 27 5/8/4=27 5/32,再计算 29/32+5/32=34/32=217/32, 表明需要阶码加 1,将变成 8,已经不能表示,是溢出。 B) 千万不要变分数为小数之后再转换成二进制,分母是 2 的整数幂时只需转换其分子部分,这对于解这个题实在是太重要了。 14 某计算机的 Cache 共有 16 块,采用 2 路组相联映射方式(即每组 2块)。每个主存块大小为 32 字节,按字节编址。主存 129 号单元所在主存块应装入到的 Cache 组号是 A 0 B 2 C 4 D 6 答案 C 解析 1、 Cache 与
6、主存之间的地址映射关系; 2、三种 Cache 的组织方式 (其实本题未测试这一点,是直接映射还是两路组相联与答案不相关); 129 MOD 32 = 4 余 1,所以答案为 C,注意 Cache 的组号从 0 开始编码。 3、注:本题设映射关系为: i=j mod v (其中 i 为 cache 的组号, j 为主存的块号 ), m=v k( m 为 cache 中的块数, v 为 cache 中的组数, k 为每组包含的块数)。则答案为 C。 假如设映射关系为: i=j/2tmod 2g , (其中 i 为 cache 的组号 , j 为主存的块号, 2t为组内的块数, 2g 为 cach
7、e 分的组数 )。则答案为 B。 15 某计算机主存容量为 64 KB,其中 ROM 区为 4 KB,其余为 RAM 区,按字节编址。现要用 2 K 8 位的 ROM 芯片和 4 K 4 位的 RAM 芯片来设计该存储器,则需要上述规格的ROM 芯片数和 RAM 芯片数分别是 A 1、 15 B 2、 15 C 1、 30 D 2、 30 答案 D 解析 1、一个字节 Byte 由 8 个二进制位 bit 组成; 2、存储器的字位扩展技术,选用已有芯片构建存储器; 计算: 4KB 的 ROM 要用 2K 8 位的器件 2 片 ; 60KB 的 RAM 要用 4K 4 位的芯片数量是( 60K
8、8) /( 4K 4) =30; 16某机器字长 16 位,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。假定取指令时,每取一个字节 PC 自动加 1。若某转移指令所在主存地址为 2000H,相对位移量字段的内容为 06H,则该转移指令成功转移后的目标地址是 A 2006H B 2007H C 2008H D 2009H 答案 C 解析 1、指令的寻址方式,相对寻址的执行过程 2、指令的执行步骤与每一步的操作功能; 计算机按字节寻址,相对转移指令在 2000H 单元,则取出这 条指令后 PC 的值应为2002H,因为取指的同时将执行 PC
9、 增量操作(此处增量值为 2,而不是 1),相对位移量的值是 6,故转移目标地址应为 2008H。 17 下列关于 RISC 的叙述中, 错误 的是 A RISC 普遍采用微程序控制器 B RISC 大多数指令在一个时钟周期内完成 C RISC 的内部通用寄存器数量相对 CISC 多 D RISC 的指令数、寻址方式和指令格式种类相对 CISC 少 答案 A 解析 1、相对于 CISC 计算机, RISC 计算机的特点表现在哪些方面; 2、组合逻辑控制器和微程序控制器的组成与 性能的同异之处; 18 某计算机的 指令流水线 由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间的缓存时间)
10、分别为 90 ns、 80 ns、 70 ns 和 60 ns,则该计算机的 CPU 时钟周期至少是 A 90 ns B 80 ns C 70 ns D 60 ns 答案 A 解析 1、如何确定每个流水步的时间长度,时钟周期应以最长的执行时间为准,否则用时长的流水段的功能将不能正确完成。 19 相对于微程序控制器,硬布线控制器的特点是 A指令执行速度慢,指令功能的修改和扩展容易 B指令执行速度慢, 指令功能的修改和扩展难 C指令执行速度快,指令功能的修改和扩展容易 D指令执行速度快,指令功能的修改和扩展难 答案 D 解析 1、组合逻辑控制器和微程序控制器的组成与性能的同异之处。 20 假设某系
11、统总线在一个总线周期中并行传输 4 字节信息,一个总线周期占用 2 个时钟周期,总线时钟频率为 10 MHz,则总线带宽是 A 10 MB/s B 20 MB/s C 40 MB/s D 80 MB/s 答案 B 。 解析 1、总线的带宽等于总线周期的频率每个总线周期传送的信息数量。 按题意, (10 106 /2) 4 = 20 106 ( MB/s)。 21 假设 某计算机的存储系统由 Cache 和主存组成。某程序执行过程中访存 1000 次,其中访问 Cache 缺失(未命中) 50 次,则 Cache 的命中率是 A 5% B 9.5% C 50% D 95% 答案 D 解析 1、
12、Cache 与主存之间的地址映射关系。 2、三种 Cache 的组织方式(其实本题未测试这一点,是直接映射还是两路组相联与答案不相关); 3、 Cache 的命中率。计算:命中率为 (1000 50) / 1000 = 95% 22 下列选项中,能引起外部中断的事件是 A键盘输入 B除数为 0 C浮点运算下溢 D访存缺页 答案 A 解析 1、中断的分类。 能引起外部中断的只能是输入设备键盘。 二 综合应用题 43 ( 8 分)某计算机的 CPU 主频为 500 MHz, CPI 为 5(即执行每条指令平均需 5 个时钟周期)。假定某外设的数据传输率为 0.5 MB/s,采用中断方式与主机进行
13、数据 传送,以 32位为传输单位,对应的中断服务程序包含 18 条指令,中断服务的其他开销相当于 2 条指令的执行时间。请回答下列问题,要求给出计算过程。 ( 1) 在中断方式下, CPU 用于该外设 I/O 的时间占整个 CPU 时间的百分比是多少? ( 2)当该外设的数据传输率达到 5 MB/s 时,改用 DMA 方式传送数据。假定每次 DMA传送块大小为 5000 B,且 DMA 预处理和后处理的总开销为 500 个时钟周期,则 CPU用于该外设 I/O 的时间占整个 CPU 时间的百分比是多少?(假设 DMA 与 CPU 之间没有访存冲突) 答案 ( 1)中断方式下, CPU 每次用于
14、数据传送的时钟周期数: 518 +52 = 100 为达到外设 0.5 MB/s 的数据传输率,外设每秒申请的中断次数: 0.5 MB /4 B = 125 000 1 秒钟内用于中断的开销: 100 125 000 = 12500 000 = 12.5 M 个时钟周期 CPU 用于外设 I/O 的时间占整个 CPU 时间的百分比: 12.5 M/500 M = 2.5% ( 2)外设数据传输率提高到 5 MB/s 时, 1 秒钟内需产生的 DMA 次数: 5 MB/5 000 B = 1000 CPU 用于 DMA 处理的总开销: 1000 500 = 500 000 = 0.5 M 个时钟
15、周期 CPU 用于外设 I/O 的时间占整个 CPU 时间的百分比: 0.5 M /500 M = 0.1% 解析 在答案中已加入分析。 44 ( 13 分) 某计算机字长 16 位,采用 16 位定长指令字结构,部分数据通路结构如下图所示(见下页),图中所有控制信号为 1 时表示有效、为 0 时表示无效,例如控制信号 MDRinE为 1 表示允许数据从 DB打入 MDR, MDRin 为 1 表示允许数据从内总线打入 MDR。假设MAR 的输出一直处于使能状态。加法指令“ ADD (R1), R0 ” 的功 能为(R0)+(R1)(R1),即将 R0 中的数据与 R1 的内容所指主存单元的数
16、据相加,并将结果送入 R1 的内容所 指主存单元中保存。 M e m R M e m W Da ta A d d r 存储器 (M ) CB DB AB M A Rin M DRin E M DRo u t R0 R0 in R1 in R0 o u t R1 o u t R1 A A in A d d AL U AC A Co u t P C o u t PC P C+ 1 IR I Rin 至指令译码部件 控制信号图例 X o u t 三态门及其控制信号 X in 寄存器输入控制信号 M DRo u tE M DRin P Ci n M A R M DR A Cin 内总线 下表给出了上述
17、指令取指和译码阶段每个节拍(时钟周期)的功能和有效控制信号,请按表中描述方式用 表格 列出 指令执行阶段 每个节拍的功能和有效控制信号。 时钟 功能 有效控制信号 C1 MAR (PC) PCout, MARin C2 MDR M(MAR) PC (PC)+1 MemR, MDRinE PC+1 C3 IR (MDR) MDRout, IRin C4 指令译码 无 答案 参考答案一: 时钟 功能 有效控制信号 C5 MAR (R1) R1out, MARin C6 MDR M(MAR) A (R0) MemR, MDRinE R0out, Ain C7 AC (MDR)+(A) MDRout,
18、 Add, ACin C8 MDR (AC) ACout, MDRin C9 M(MAR) (MDR) MDRoutE, MemW “ A (R0)”也可在 C7:“ AC (MDR)+(A)”之前单列的一个时钟周期内执行。 参考答案二: 时钟 功能 有效控制信号 C5 MAR (R1) R1out, MARin C6 MDR M(MAR) MemR, MDRinE C7 A (MDR) MDRout, Ain C8 AC (A)+ (R0) R0out, Add, ACin C9 MDR (AC) ACout, MDRin C10 M(MAR) (MDR) MDRoutE, MemW 解析
19、一条指令的执行过程通常由取指、译码和执行 3 个步骤完成,本题中取指用 3 个节拍、译码用 1 个节拍,执行加法运算并把结果写入主存如何完成呢?包括划分执行步骤、确定完成的功能、要提供的控制信号,这是本题的要测试的内容。 为回答这个问题,首先需要看清图中给出的部件组成情况和信息传送的路径。 要完成的功能是 (R0) + ( (R1)) (R1),从图中看到: ( 1) R0、 R1 都有送自己内容到内总线的路径,控制信号分别是 R0in 和 R1in; ( 2) ALU 加运算, 2 个数据由工作寄存器 A 和内总线提供,控制信号是 Add;累加器AC 只接收内总线的内容,控制信号是 Ain;
20、结果需存 AC,控制信号是 ACin; AC 的内容可送内总线,控制信号是 ACout; ( 3) PC 可接收内总线的内容,还可增 1,控制信号是 PCin 和 PC+1, PC 的内容可送 内总线,控制信号是 PCout; ( 4) 指令寄存器 IR 可接收内总线的内容,控制信号是 IRin; ( 5) 读写存储器时,地址由 MAR 经 AB提供, MAR 只接收内总线上的信息,控制信号是 MARin; ( 6) 读存储器,提供读命令 MemR,并通过 DB 送入 MDR,控制信号是 MDRinE; MDR 的内容可送内总线,控制信号是 MDRout; ( 7)写存储器,提供写命令 Mem
21、W,数据由 MDR 通过 DB 送到存储器的数据引脚,控制信号是 MDRoutE; 然后是划分执行步骤、确定每一步完成的功能、需要提供的控制信号。这是由指令应完成 的功能和计算机硬件的实际组成情况和信息传送的可用路径共同决定的。基本原则是步骤越少越好,硬件电路要能支持,可以有多种方案,解题时应参照已给出的答题格式,即取指和译码执行过程的那张表的内容,但不必把表已有的内容再抄一遍。 划分指令执行步骤,确定每一步完成的功能、给出需要提供的控制信号: 请注意,( R0) +( R1)表示: R0 寄存器的内容与 R1 作地址从主存中读出来的数据完成加法运算;而 ( R1)表示把 R1 的内容作为主存
22、储器的地址完成写主存操作。为防止出现误解,题中还特地对此作了文字说明。这条指令的功能是先到 主存储器取一个数,之后运算,再将结果写回主存储器。 ( 1) 执行相加运算,需把存储器中的数据读出,为此首先送地址,即 R1 的内容送MAR,控制信号是 R1out, MARin。 ( 2) 启动读主存操作,读出的内容送入 MDR,控制信号是 MemR, MDRinE, 还可同时把 R0 的内容经内总线送入 A,用到的控制信号是 R0out, Ain。 ( 3) 执行加法运算,即 A 的内容与 MDR 的内容相加,结果保存到 AC, 控制信号是 MDRout, Add, ACin。 ( 4) 要把 AC
23、 的内容写入主存,由于 R1 的内容已经在 MAR 中,地址已经有了,但需要把写入的数据(已经在 AC)中)经内总线送入 MDR; 控制信号是 ACout, MDRin。 ( 5) 给出写主存的命令 ,把 MDR 的内容经 DB 送存储器的数据线引脚,执行写操作 ,控制信号是 MDRoutE, MemW。 这几个步骤是有先后次序的,前面的完成了,下一步才可以执行,也保证了不会产生硬件线路的冲突。请注意,使用最为频繁的是内总线,它在任何时刻只能接收一个输入数据,并且向内总线发送信息的电路只能以三态门器件连接到内总线, 5 个向内总线发送信息的控制信号( ACout, PCout, R0out,
24、R1out, MDRout)最多只能有一个为 1,其 它 4 个必须全为0,或者 5 个全为 0。 仔细看一下,发现可以把第 2 个步骤的操作划分到两个步骤中完成,一个步骤中安排MDR 接收从存储器中读出的内容,到另外一个步骤实现 R0 的内容送入 A,这多用了一个操作步骤,指令的执行速度会变慢。有些解题者在写存储器之前,还会再执行一次把 R1 的内容送 MAR,尽管无此必要,但不属于原理上的错误。 当然还可以有其它的设计结果。 解题时这些叙述内容不必写出来(我们写出这些内容是希望帮助大家领会本题要测试的知识点和指令的执行过程),直接按照已经给出的表格的形式、按照提供的填写办法把设计的表 格及
25、其内容填写好就可以了。 请注意,题目表格内容(告诉你答题的格式和答题内容的表达方式)与你答题的表格内融 合在一起才是这条指令完整的执行过程,千万不要产生任何错觉。 2010 年全国硕士研究生计算机学科入学统一考试 计算机组成原理试题分析 一、选择题 (每个题 2 分) 12 下列选项中,能缩短程序执行时间的措施是 I 提高 CPU 时钟频率 II 优化数据通路结构 III对程序进行 编译优化 A 仅 I 和 II B 仅 I 和 III C 仅 II 和 III D I、 II 和 III 答案 D 解析 提高 CPU 时钟频率会使机器执行指令的运行速度更快,对程序进行编译优化可以有效地减少指
26、令条数,优化数据通路结构可以改进某些指 令的运行效率, 3 者都有利于缩短程序的执行时间。 13 假 定有 4 个整数用 8 位补码分别表示为 r1=FEH, r2=F2H, r3=90H, r4=F8H。若将运算结果存放在一个 8 位寄存器中 ,则下列运算会发生溢出的是 A r1 r2 B r2 r3 C r1 r4 D r2 r4 答案 B 解析 8 位寄存器能保存的补码整数的范围是 -128+127, r1 中的数值是 -2, r2 中的数值是 -14,r3 中的数值是 -112, r4 中的数值是 -8,则 4 个运算会发生溢出的是 r2 r3。 14假定变量 i、 f 和 d 的数据
27、类型分别为 int、 float 和 double( int 用补码表示, float 和 double分别用 IEEE 754 单精度和双精度浮点数格式表示),已知 i=785, f=1.5678e3, d=1.5e100。若在 32 位机器中执行下列关系表达式,则结果为“真”的是 I i = (int) (float) i II f = (float) (int) f III f = (float) (double) f 错误 !未找到引用源。 (d+f) - d = f A仅 I 和 II B仅 I 和 III C仅 II 和 III D仅 III 和 IV 答案 B 解析 ( II)运
28、算会丢掉浮点数的小数部分,( IV)运算过程中可能有误差使其不相等,( I)和( III)则不存在问题。 15假定 用若干个 2 K 4 位的芯片组成一个 8 K 8 位的存储器,则地址 0B1FH 所在芯片的最小地址是 A 0000H B 0600H C 0700H D 0800H 答案 D 解析 一个 8 k 8 位的存储器可以由 8 片 2k 4 位的存储器芯片组成,则每 2k 存储空间的起始地址为 0000H、 0800H、 1000H、 1800H,因此 0B1FH 所在芯片的最小地址是 0800H。 16 下列有关 RAM 和 ROM 的叙述中,正确的是 I RAM 是易失性存储器
29、, ROM 是非易失性存储器 II RAM 和 ROM 都采用随机存取方式进行信息访问 III RAM 和 ROM 都可用作 Cache IV RAM 和 ROM 都需要进行刷新 A 仅 I 和 II B 仅 II 和 III C仅 I、 II 和 IV D 仅 II、 III 和 IV 答案 A 解析 因为 ROM 不能用作 cache,也不需要刷新操作,此 2 个选项是错的。 17下列命中组合情况中,一次访存过程中 不 可能发生的是 A TLB 未命中、 Cache 未命中、 Page 未命中 B TLB 未命中、 Cache 命中、 Page 命中 C TLB 命中、 Cache 未命中
30、、 Page 命中 D TLB 命中、 Cache 命中、 Page 未命中 答案 D 解析 TLB 中保存的是当前用到的最活跃的 Page 项内容,若 TLB 命中,就不会出现 Page 不命中的情况。 18 下列寄存器中, 汇编语言程序员可见的 是 A 存储器 地址 寄存器( MAR) B 程序计数器( PC) C 存储器 数据 寄存器( MDR) D 指令寄存器( IR) 答案 B 解析 其他 3 个寄存器程序员不能访问,但有的机器会选用一个通用寄存器作为 PC,相对寻址是选用运算后 PC 中的内容作为指令转移的目标地址。 19 下列选项中, 不 会引起指令流水线阻塞的是 A数据旁路(转
31、发) B 数据相关 C 条件转移 D 资源 冲突 答案 A 解析 数据旁路技术就是用于解决指令流水中的数据相关,换句话说,在遇到数据相关时,在可能的情况下可以通过数据旁路技术加以克服,其他 3 个选项都是指令流水 线阻塞的基本原因。 20下列选项中的英文缩写均为总线标准的是 A PCI、 CRT、 USB、 EISA B ISA、 CPI、 VESA、 EISA C ISA、 SCSI、 RAM、 MIPS D ISA、 EISA、 PCI、 PCI-Express 答案 D 解析 CRT、 CPI、 RAM、 MIPS 都与总线标准无关。 21 单级中断系统中,中断服务程序内的执行顺序是 I
32、保护现场 II开中断 III关中断 IV保存断点 V中断事件处理 VI恢复现场 VII中断返回 A 错误 !未找到引用源。 V VI II VIIB III I V VII C III IV V VI VII D IV I V VI VII 答案 A 解析 在单级中断系统中,一旦响应了一个中断,可以不必使用关中断 的措施来防止再来一个新的中断干扰已经开始的中断保存现场和恢复现场的工作。响应与处理中断的几项操作是有严格顺序关系的,不能颠倒。 22 假定一台计算机的显示存储器用 DRAM芯片实现,若要求显示分辨率为 1600 1200, 颜色深度为 24 位,帧频为 85 Hz,显存总带宽的 50
33、%用来刷新屏幕,则需要的显存总带宽至少约为 A 245 Mbps B 979 Mbps C 1 958 Mbps D 7 834 Mbps 答案 D 解析 显存每秒需要提供屏幕刷新的信息量: 1.61031.21032485=3916.8106 ,用到的总线带宽为 23916.8106bps, 可以取其整数值,选择 7834Mbps。 二、综合应用题 43 ( 11 分)某计算机字长为 16 位,主存地址空间大小为 128 KB,按字编址。采用单字长指令格式,指令各字段定义如下: 15 12 11 6 5 0 OP Ms Rs Md Rd 源操作数 目的操作数 转移指令采用相对寻址方式,相对偏
34、移量用补码表示。寻址方式定义如下: Ms / Md 寻址方式 助记符 含义 000B 寄存器直接 Rn 操作数 =(Rn) 001B 寄存器间接 (Rn) 操作数 =(Rn) 010B 寄存器间接、自增 (Rn)+ 操作数 =(Rn), (Rn)+1 Rn 011B 相对 D(Rn) 转移目标地址 =(PC)+(Rn) 注:( x)表示存储器地址 x或寄存器 x的内容。 请回答下列问题: ( 1) 该指令系统最多可有多少条指令?该计算机最多有多少个通用寄存器?存储 器地址寄存器( MAR)和存储器数据寄存器( MDR)至少各需要多少位? ( 2)转移指令的目标地址范围是多少? ( 3) 若操作码 0010B 表示加法操作(助记符为 add),寄存器 R4和 R5 的编号分别为 100B和 101B, R4的内容为 1234H, R5 的内容为 5678H,地址 1234H 中的内容为 5678H,地址 5678H中的内容为 1234H,则汇编语句“ add (R4), (R5)+”(逗号前为源操作数,逗号后为目的操作数)对应的机器码是什么(用十六进制表示)?该指令执行后,哪些寄存器和存储单元的内容会改变?改变后的内容是什么?
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。