2014福州大学计算机考研,计算机组成原理真题
(2013-10-18 15:40:45)
标签:
2014考研计算机考研计算机组成原理真题福州大学教育 |
2014考研复习已经到了冲刺阶段了,对于很多同学专业课都还没能做好完全的复习,在简短的考研冲刺阶段,为了能够更有效的做好专业知识的复习,思远福大老师特别的分享一份2010年全国硕士研究生计算机学科入学统一考试计算机组成原理试题分析,希望能够帮助考生做好一些关键复习。
一、选择题(每个题2分)
12.下列选项中,能缩短程序执行时间的措施是
I.提高CPU时钟频率
III.对程序进行编译优化
A.仅I和II
[答案] D
[解析]
提高CPU时钟频率会使机器执行指令的运行速度更快,对程序进行编译优化可以有效地减少指令条数,优化数据通路结构可以改进某些指令的运行效率,3者都有利于缩短程序的执行时间。
13.假定有4个整数用8位补码分别表示为r1=FEH,r2=F2H,r3=90H,r4=F8H。若将运算结果存放在一个8位寄存器中,则下列运算会发生溢出的是
A.r1×r2
[答案] B
[解析]8位寄存器能保存的补码整数的范围是-128~+127,r1中的数值是-2,r2中的数值是-14,r3中的数值是-112,r4中的数值是-8,则4个运算会发生溢出的是r2×r3。
I.i == (int) (float)
i
III.f == (float) (double)
f
A.仅I和II
[答案] B
[解析]
(II)运算会丢掉浮点数的小数部分,(IV)运算过程中可能有误差使其不相等,(I)和(III)则不存在问题。
15.假定用若干个2 K×4位的芯片组成一个8 K×8位的存储器,则地址0B1FH所在芯片的最小地址是
A.0000H
[答案] D
[解析]
一个8
k×8位的存储器可以由8片2k×4位的存储器芯片组成,则每2k存储空间的起始地址为0000H、0800H、1000H、1800H,因此0B1FH所在芯片的最小地址是0800H。
16.下列有关RAM和ROM的叙述中,正确的是
I.RAM是易失性存储器,ROM是非易失性存储器
II.RAM和ROM都采用随机存取方式进行信息访问
III.RAM和ROM都可用作Cache
IV.RAM和ROM都需要进行刷新
A.仅I和II
[答案] A
[解析]因为ROM不能用作cache,也不需要刷新操作,此2个选项是错的。
17.下列命中组合情况中,一次访存过程中不可能发生的是
A.TLB未命中、Cache未命中、Page未命中
B.TLB未命中、Cache命中、Page命中
C.TLB命中、Cache未命中、Page命中
D.TLB命中、Cache命中、Page未命中
[答案] D
[解析]TLB中保存的是当前用到的最活跃的Page项内容,若TLB命中,就不会出现Page不命中的情况。
18.下列寄存器中,汇编语言程序员可见的是
A.存储器地址寄存器(MAR)
C.存储器数据寄存器(MDR)
[答案] B
[解析]
其他3个寄存器程序员不能访问,但有的机器会选用一个通用寄存器作为PC,相对寻址是选用运算后PC中的内容作为指令转移的目标地址。
19.下列选项中,不会引起指令流水线阻塞的是
A.数据旁路(转发)
C.条件转移
[答案] A
[
20.下列选项中的英文缩写均为总线标准的是
A.PCI、CRT、USB、EISA
C.ISA、SCSI、RAM、MIPS
[答案] D
[
21.单级中断系统中,中断服务程序内的执行顺序是
I.保护现场
V.中断事件处理
A.I→V→VI→II→VII
C.III→IV→V→VI→VII
[答案] A
[
22.假定一台计算机的显示存储器用DRAM芯片实现,若要求显示分辨率为1600×1200,颜色深度为24位,帧频为85 Hz,显存总带宽的50%用来刷新屏幕,则需要的显存总带宽至少约为
A.245 Mbps
[答案] D
[解析]
显存每秒需要提供屏幕刷新的信息量:1.6×103×1.2×103×24×85=3916.8×106
,用到的总线带宽为2×3916.8×106bps,可以取其整数值,选择7834Mbps。
二、综合应用题
43.(11分)某计算机字长为16位,主存地址空间大小为128 KB,按字编址。采用单字长指令格式,指令各字段定义如下:
15
OP
转移指令采用相对寻址方式,相对偏移量用补码表示。寻址方式定义如下:
Ms / Md
000B
001B
010B
011B
注:(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)+”(逗号前为源操作数,逗号后为目的操作数)对应的机器码是什么(用十六进制表示)?该指令执行后,哪些寄存器和存储单元的内容会改变?改变后的内容是什么?
[
MAR至少为16位;MDR至少为16位。
(2)转移指令的目标地址范围为0000H~FFFFH。
(3)汇编语句“add (R4), (R5)+”,对应的机器码为:2315H。
[解析]
(2)转移指令的目标地址范围为0000H~FFFFH。
(3)对于汇编语句“add (R4), (R5)+”,对应的机器码为:0010 001 100 010 101B,用十六进制表示为2315H。
该指令的功能是:把内存1234H单元中的数据与内存5678H单元中的数据进行相加,结果写回到5678H单元,而且R5的内容用作内存地址之后,还要执行R5的内容加1的操作,所以“add (R4), (R5)+”指令执行后,R5和存储单元5678H的内容会改变。执行后,R5的内容从5678H变为5679H。内存5678H单元的内容将变为该加法指令计算得到的和:5678H+1234H=68ACH。
44.(12分)某计算机的主存地址空间大小为256 MB,按字节编址。指令Cache和数据Cache分离,均有8个Cache行,每个Cache行大小为64 B,数据Cache采用直接映射方式。现有两个功能相同的程序A和B,其伪代码如下所示:...
假定int类型数据用32位补码表示,程序编译时i, j, sum均分配在寄存器中,数组a按行优先方式存放,其首地址为320(十进制数)。请回答下列问题,要求说明理由或给出计算过程。
(1)若不考虑用于Cache一致性维护和替换算法的控制位,则数据Cache的总容量为多少?
(2)数组元素a[0][31]和a[1][1]各自所在的主存块对应的Cache行号分别是多少(Cache行号从0开始)?
(3)程序A和B的数据访问命中率各是多少?哪个程序的执行时间更短?
[答案]
(2)数组a在主存的存放位置及其与Cache之间的映射为:
a[0][31]所在主存块映射到Cache第6行,
a[1][1]
所在主存块映射到Cache第5行。
(3)编译时i, j, sum均分配在寄存器中,故数据访问命中率仅考虑数组a的情况。
①程序A的数据访问命中率为93.75%;
②程序B的数据访问命中率为0。
程序A的执行比程序B快得多。
[解析]
(2)数组a在主存的存放位置及其与Cache之间的映射关系如下图所示。
数组A[0][31]所在的主存块对应的Cache行号是:
(320+31×4)div 64 = 6,
数组A[1][1]所在主存块对应的Cache行号:
((320+256×4+ 1×4) div 64) mod 8 = 5。
所以 a[0][31]所在主存块映射到Cache第6行,
a[1][1]所在主存块映射到Cache第5行。
...
(3)编译时i, j, sum均分配在寄存器中,故数据访问命中率仅考虑数组a的情况。
①这个程序的特点是数组中的每一个int
类型的数据只被使用一次。数组A按行优先存放,数据Cache正好放下数组半行中的全部数据,即数据的存储顺序与使用次序有更高的吻合度,每个字块存16个int类型的数据,访问每个字块中头一个字不会命中,但接下来的15个字都会命中,访问全部字块都符合这一规律,命中率是15/16,即程序A的数据访问命中率为93.75%;
②程而程序B是按照数组的列执行外层循环,在内层循环过程中,将连续访问不同行的同一列的数据,不同行的同一列数据使用的是同一个Cache单元,每次都不会命中,命中率是0,程序执行特别慢。
根据上述计算出的命中率,得出程序B每次取数都要访问主存,所以程序A的执
行比程序B快得多。资料参考:思远福大考研网