2021年浙江理工大学计算机科学与技术专业《计算机组成原理》科目期末试卷A(有答案)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2021年浙江理工大学计算机科学与技术专业《计算机组成原理》科目
期末试卷A(有答案)
一、选择题
1、假设变址寄存器R的内容为1000H,指令中的形式地址为2000H:地址1000H中的内容为2000H,地址2000H中的内容为3000H,地址3000H中的内容为4000H,则变址寻址方式下访问到的操作数是()。

A.1000H
B.2000H
C.3000H
D.4000H
2、下列关于各种寻址方式获取操作数快慢的说法中,正确的是()。

I.立即寻址快于堆栈寻址
Ⅱ.堆栈寻址快于寄存器寻址
Ⅲ.寄存器一次间接寻址快于变址寻址
Ⅳ.变址寻址快于一次间接寻址
A. I、IV
B.Ⅱ、Ⅲ
C.I、Ⅲ、IV
D.Ⅲ、Ⅳ
3、假定变量i、f、d的数据类型分别为int、float、double(int用补码表示,float 和double用IEEE754标准中的单精度和双精度浮点数据格式表示),已知i=785,f-
l.5678e3,d=1.5el00,若在32位机器中执行下列关系表达式,则结果为真的是()。

I.i==(int)(float)i Ⅱ.f==(float)(int)f
IⅡ.f==(float)(double)f Ⅳ.(d+f)-d=f
A.仅I、Ⅱ
B.仅I、Ⅲ
C.仅Ⅱ、Ⅲ
D.仅Ⅲ、Ⅳ
4、假设有7位信息码010101,则低位增设偶校验位后的代码和低位增设奇校验位后的代码分别为()。

A.01101010 01101010
B.0101010 01101011
C.01101011 01101010
D.01101011 01101011
5、在浮点机中,判断原码规格化的形式的原则是()。

A.尾数的符号位与第一数位不同
B.尾数的第一数位为1,数符任意
C.尾数的符号位与第一位相同
D.阶符与数符不同
6、某机器字长32位,存储容量64MB,若按字编址,它的寻址范围是()。

A.8M
B.16MB
C.16M
D.8MB
7、关于LRU算法,以下论述正确的是()。

A.LRU算法替换掉那些在Cache中驻留时间最长且未被引用的块
B.LRU算法替换掉那些在Cache中驻留时间最短且未被引用的块
C.LRU算法替换掉那些在Cache中驻留时间最长且仍在引用的块
D.LRU算法替换掉那些在Cache中驻留时间最短且仍在引用的块
8、程序P在机器M上的执行时间是20s,编译优化后,P执行的指令数减少到原来的70%,而CPl增加到原来的1.2倍,则P在M上的执行时间是()。

A.8.4s
B.11.7s
C.14s
D.16.8s
9、只有当程序要执行时,它才会去将源程序翻译成机器语言,而且一次只能读取、翻译并执行源程序中的一行语句,此程序称为()。

A.目标程序
B.编译程序
C.解释程序
D.汇编程序
10、下列关于同步总线的说法中,正确的有()。

I.同步总线一般按最慢的部件来设置公共时钟
II.同步总线一般不能很长
III.同步总线一般采用应答方式进行通信
IV.通常,CPU内部总线、处理器总线等采用同步总线
A. I,II
B. I,II,IV
C.III,IV
D.II,III,IV
11、下列关于总线仲裁方式的说法中,正确的有()。

I.独立请求方式响应时间最快,是以增加处理器开销和增加控制线数为代价的
II.计数器定时查询方式下,有,根总线请求(BR)线和一根设备地址线,若每次计数都从0开始,则设备号小的优先级高
III.链式查询方式对电路故障最敏感
IV.分布式仲裁控制逻辑分散在总线各部件中,不需要中央仲裁器
A.III,IV
B. I,III,IV
C. I,II,IV
D.II,III,IV
12、微程序控制器的速度比硬布线控制器慢,主要是因为()。

A.增加了从磁盘存储器读取微指令的时间
B.增加了从主存储器读取微指令的时间
C.增加了从指令寄存器读取微指令的时间
D.增加了从控制存储器读取微指令的时问
13、下列关于超标量流水线特性的叙述中,正确的是()。

I.能缩短流水线功能段的处理时间
II.能在一个时钟周期内同时发射多条指令
III.能结合动态调度技术提高指令执行并行性
A.仅II
B.仅I、III
C.仅I、II
D. I、II、III
14、中断服务程序的最后一条指令是()。

A.转移指令
B.出栈指令
C.中断返回指令
D.开中断指令
15、计算机的外部设备指()
A.输入/输出设备
B.外存储器
C.输入/输出设备和外存储器
D.以上均不正确
二、填空题
16、存储_______并按_______顺序执行,这是冯·诺依曼型计算机的工作原理。

17、目前的CPU包括________、 ________和cache、
18、为了解决多个_______同时竞争总线_______,必须具有_______部件。

19、一位十进制数,用BCD码表示需要________位二进制码,用ASCII码表示需要
________位二进制码。

20、移码表示法主要用于表示浮点数的_______码,以利于比较两个_______数的大小和进行操作。

21、指令字长度有______、______、______三种形式。

22、中断处理需要有中断________。

中断________产生,中断________等硬件支持。

23、相联存储器是按_________访问的存储器,在cache中用来存放_________,在虚拟存储器中用来存放_________.
24、数控机床是计算机在_______方面的应用,邮局把信件自动分练是在计算机_______方面的应用。

25、一位十进制数,用BCD码表示需______位二进制码,用ASCII码表示需______位二进制码。

三、名词解释题
26、全写法(写直达法):
27、控制存储器:
28、指令流:
29、绘图机:
四、简答题
30、写出浮点数补码规格化形式。

当尾数出现什么形式时需要规格化?如何规格化?
31、什么是指令格式?计算机指令为什么要有一定的格式?
32、简要说明程序中断接口中IM、IR、EI、RD、BS五个触发器的作用。

33、在寄存器一寄存器型,寄存器一存储器型和存储器一存储器型三类指令中,哪类指令的执行时间最长?哪类指令的执行时间最短?为什么?
五、计算题
34、设存储字长和指令字长均为24位,若指令系统可完成108种操作,且具有直接、一一次间接寻址、多次间接寻址、变址、基址、相对和立即这7种寻址方式,则可在保证最大范围内直接寻址的前提下,指令字中操作码占几位?寻址特征位占几位?可直接寻址的范围是多少?一次间接寻址的范围是多少?多次间接寻址的范围又是多少?
35、设某机主存容量为16MB,Cache的容量为8KB,且按字节编址。

每字块8个字,每字32位。

设计一个4路组相联映射的Cache组织。

1)画出主存地址字段中各段的位数。

2)设Cache初态为空,CPU依次从主存0,1,2,…,99号单元中读出100个字(主存一次读出一个字),并重复此次序10次,问命中率是多少?
3)若Cache速度是主存速度的5倍,试问有Cache和无Cache相比,速度提高多少倍?
4)系统的效率是多少?
36、假设对于上题中的计算机M和程序P的机器代码,M采用页式,虚拟存储管理:P开始执行时,(R1)=(R2)=0,(R6)=1000,其机器代码已调入主存但不
在Cache中:数组A未调入主存,且所有数组元素在同一页,并存储在磁盘同一个
扇区。

请回答下列问题并说明理由。

1)P执行结束时,R2的内容是多少?
2)M的指令Cache和数据Cache分离。

若指令Cache共有16行,Cache和主存交
换的块大小为32字节,则其数据区的容量是多少?若仅考虑程序段P的执行,则指
令Cache的命中率为多少?
3)P在执行过程中,哪条指令的执行可能发生溢出异常?哪条指令的执行可能产
生缺页,异常?对于数组A的访问,需要读磁盘和TLB至少各多少次?
六、综合题
37、在信号处理和科学的应用中,转置矩阵的行和列是一个很重要的问题。

从局
部性的角度来看,它也很有趣,因为它的引用模式既是以行为主的,也是以列为主的,例如,考虑下面的转置函数:
1.Tped ef int array a[2][2];
2.
3 .void transposel(array dst,array src)
4.{
5. int i,j;
6.for(i=0;i<2;1++){
7. for(j=0;j<2;j++){
8. dst[j] [i]=src[i] [j];
9. }
10. }
11. }
假设在一台具有如下属性的机器上运行这段代码:
sizeof(int)==4。

src数组从地址0开始,dst数组从地址16开始(十进制)。

只有一个L1数据高速缓存,它是直接映射的、直写、写分配,块大小为8个字节。

这个高速缓存总的大小为16个数据字节,一开始是空的。

对src和dst数组的访问分别是读和写不命中的唯一来源。

问题如下:
1)对每个row和col,指明对src[row][col]和dstfrow][col]的访问是命中(h)还是不命中(m),例如,读src[0][0]会不命中,写dst[0][0]也不命中,并将结果填至下列表格中。

2)对于一个大小为32数据字节的高速缓存,指明src和dst的访问命中情况,并将结果填至下列表格中。

38、某计算机采用16位定长指令字格式,其CPU中有一个标志寄存器,其中包含进位/借位标志CF、零标志ZF和符号标志NF。

假定为该机设计了条件转移指令,其格式如图所示。

其中,00000为操作码OP;C、Z和N分别为CF、ZF和NF的对应检测位,某检测位为l时表示需检测对应标志,需检测的标志位中只要有一个为1就转移,否则不转移,例如,若C=l,Z=0,N=1,则需检测CF和NF的值,当CF=l或NF=1时发生转移;OFFSET是相对偏移量,用补码表示。

转移执行时,转移目标地址为(PC)+2+2×OFFSET;顺序执行时,下条指令地址为(PC)+2。

请回答下列问题。

1)该计算机存储器按字节编址还是按字编址?该条件转移指令向后(反向)最多
可跳转多少条指令?
2)某条件转移指令的地址为200CH,指令内容如图所示,若该指令执行时CF=0,ZF=0,NF=1,则该指令执行后PC的值是多少?若该指令执行时CF=1,ZF=0,NF=0,则该指令执行后PC的值又是多少?请给出计算过程。

3)实现“无符号数比较小于等于时转移”功能的指令中,C、Z和N应各是什么?
4)下图是该指令对应的数据通路示意图,要求给出图中部件①~③的名称或功能
说明
39、假设指令流水线分取指(FI)、译码(ID)、执行(EX)、回写(WR)4个过程段,共有10条指令连续输入此流水线。

1)画出指令周期流程。

2)画出非流水线时空图。

3)画出流水线时空图。

4)假设时钟周期为100ns,求流水线的实际吞吐率。

5)求该流水处理器的加速比。

参考答案
一、选择题
1、D
2、C
3、B
4、B
5、B
6、C
7、A
8、D
9、C
10、B
11、B
12、D、
13、C
14、C
15、C
二、填空题
16、程序地址
17、控制器运算器
18、主设备控制权总线仲裁
19、4 7
20、阶码指对阶
21、单字长半字长双字长
22、优先级仲裁向量控制逻辑
23、内容行地址表段表、页表和快表
24、自动控制人工智能
25、4 7
三、名词解释题
26、全写法(写直达法):
cache命中时的一种更新策略,写操作时将数据既写入cache又写入主存,但块更时不需要将调出的块写回主存。

27、控制存储器:
微程序型控制器中存储微指令的存储器,通常是ROM。

28、指令流:
在计算机的存储器与CPU之间形成的不断传递的指令序列。

从存储器流向控制器。

29、绘图机:
计算机图形输出设备,主要用于工程图纸的输出。

四、简答题
30、解析:设浮点数尾数采用双符号位,当尾数呈现00.1×××…×或者
11.0×××…×时,即为补码规格化形式。

当尾数出现01.×××…×或10.××x…×时,需要右规一次,即尾数右移一位,阶码加1。

当尾数出现00.0×××…×或
11.1××x…x时,需要左规N次(N不定),尾数每左移一位,阶码减1,直到尾数
呈现规格化形式为止。

31、答:对计算机指令的编码的格式称为指令格式;以便计算机能区分指令和数据;
32、答:它们的作用是:中断屏蔽触发器(IM):CPU是否受理中断或批准中断的标志。

IM标志为“0”时,CPU可受理外界中断请求。

中断请求触发器(IR):暂存中断请求线上由设备发出的中断请求信号。

IR标志为“1”
时表示设备发出了中断请求。

允许中断触发器(EI):用程序指令来置位,控制是否允许某设备发出中断请求。

EI为“1”时,某设备可以向CPU发出中断请求。

准备就绪的标志(RD):一旦设备做好一次数据的接受或发送,便发出一个设备动作完
毕信号,使RD标志为“1”。

工作触发器:(BS):设备“忙”的标志,表示设备正在工作。

33、答:寄存器-寄存器型执行速度最快,存储器-存储器型执行速度最慢。

因为前者操作
数在寄存器中,后者操作数在存储器中,而访问一次存储器所需的时间一般比访问一次寄
存器所需时间长。

五、计算题
34、解析:
1)由于此指令系统可完成108种操作,因此指令字中的操作码占7位(27=128)。

2)由于指令系统中有7种寻址方式,因此寻址特征位占3位。

3)由于地址码的位数为24-7-3=14位,因此直接寻址的范围为214。

4)由于存储字长为24位,因此一次间接寻址的范围为224。

5)由于多次间接寻址需要使用一位来标志是否间接寻址完毕,因此只有23位用做寻址,寻址范围为223。

35、解析:
1)主存地址字段如图所示。

2)由于Cache初态为空,因此CPU读0号单元时不命中,必须访存,同时将该字所在的主存块调入Cache(调入内存一定是一整块调入,而一块包括8个单元),接着CPU读1~7号单元均命中。

同理,CPU读8,16,…,96号单元均不命中。

可见,CPU在连续读100个字中共有13次未命中,而后9次循环读100个字全部命中,命中率为
100×10−13
×100%=98.7%
100×10
3)设主存存储周期为5t,Cache的存储周期为t,没有Cache的访问时间是5t×l000,有Cache存储周期为t×(1000-13)+5t×13,则有Cache和无Cache 相比,速度提高的倍数为
5t×1000
−1=3.75
t(1000−13)+5t×13
4)系统的效率为
t
×100%=95%
0.987t+(1−0.987)×5t
36、解答:该题继承了上题中的相关信息,统考中首次引入此种设置,具体考察到程序的运行结果、Cache的大小和命中率的计算以及磁盘和TLB的相关计算,是一题比较综合的题型。

1)R2里装的是i的值,循环条件是i<N(1000),即当i自增到不满足这个条件时跳出循环,程序结束,所以此时i的值为1000。

2)Cache共有16行,每块32B,所以Cache数据区的容量为16x32B=512B。

P共
有6条指令,占24B,小于主存块大小(32B),其起始地址为08048100H,对应
一块的开始位置,由此可知所有指令都在一个主存块内。

读取第一条指令时会发生Cache缺失,故将P所在的主存块调入Cache某一行,以后每次读取指令时,都能
在指令Cache中命中。

因此在1000次循环中,只会发生1次指令访问缺失,所以指
令Cache的命中率为:(1000×6-1)/(1000×6)=99.98%。

3)指令4为加法指令,即对应sum+=A[i],当数组A中元素的值过大时,则会导
致这条加法指令发生溢出异常:而指令2、5虽然都是加法指令,但它们分别为数
组地址的计算指令和存储变量i的寄存器进行自增的指令,而i最大到达1000,所以它们都不会产生溢出异常。

只有访存指令可能产生缺页异常,即指令3可能产生缺
页异常。

因为数组A在磁盘的一页上,而一开始数组并不在主存中,第一次访问数组时会导
致访盘,把A调入内存,而以后数组A的元素都在内存中,则不会导致访盘,所以
该程序,共访盘一次。

每访问一次内存数据就会查TLB一次,共访问数组1000次,所以此时又访问TLB1000次,还要考虑到第一次访问数组A,即访问A[0]时,会多
访问一次TLB(第一次访问A[0]会先查一次TLB,然后产生缺页,处理完缺页中断后,会重新访问A[0].此时又查TLB),所以访问TLB的次数一共是1001次。

六、综合题
37、解析:
1)解决这个问题的关键是想象出如图所示的关系图。

注意:每个高速缓存行只包含数组的一个行,高速缓存正好只够保存一个数组,而且对王所有isrc和dst的行i都映射到同一个高速缓存行(0%2=0,1%2=1,2%2=0,3%2=1)。

因为高速缓存不够太,不足以容纳这两个数组,所以对一个数组的引用总是驱逐出另一个数组的有用的行。

具体过程如下:
dst[j] [i]=src[i] [j]语包先访问 src[i][i]再将其存储到dst[j] [i]
说明如下:
①访问src[0][0],不命中,将src[0]调入高速缓存的Line0。

②访问dst[0][0],不命中,将dst[0]调入高速缓存的Line0,换出src[0]。

③访问src[0][1],不命中,将src[0]调入高速缓存的Line0,换出dst[0]。

④……
2)当高速缓存为32B时,它足够大,能容纳这两个数组。

因此所有不命中都是开始时的不命中。

关系如图所示。

38、解析:l)因为指令字长为16位,且下条指令地址为(PC)+2,故编址单位是字节。

偏移OFFSET为8位补码,范围为-128~127,将-128代入转移目标地址计算公式,可以得到(PC)+254=(PC)+127×2,故该条件转移指令向后(反向)最多可跳转127条指令。

2)指令中C=0,Z=1,N=1,故应根据ZF和NF的值来判断是否转移。

当CF=0,ZF=0,NF=1时,需转移。

已知指令中偏移量为11100011B=E3H,符号扩展后为FFE3H,左移一位(乘2)后为FFC6H,故PC的值(即转移目标地址)为200CH+2+FFC6H=1FD4H。

当CF=1,ZF=0,NF=0时不转移。

PC的值为:200CH+2=200EH。

3)指令中的C、Z和N应分别设置为C=Z=l,N=0(参考常见寻址方式最后
的补充知识点)。

4)部件①:指令寄存器(用于存放当前指令);部件②:移位寄存器(用
于左移一位);部件③:加法器(地址相加)。

39、解析:
1)指令周期包括FI、ID、EX和WR这4个子过程,则指令周期流程如图a所示。

2)非流水线时空图如图b所示。

假设一个时间单位为一个时钟周期,则每隔4个时钟周期才有一个输出结果。

3)流水线时空图如图c所示。

由图c可见,第一条指令出结果需要4个时钟周期。

当流水线满载时,以后每一个时钟周期可以出一个结果,即执行完一条指令。

4)由图c所示的10条指令进入流水线的时空图可见,在13个时钟周期结束时,CPU执行完10条指令,故实际吞吐率为10条指令/(100ns×13)=0.77×107条指
令/s。

5)在流水处理器中,当任务饱满时,指令不断输入流水线,不论是几级流水线,
每隔个时钟周期都输出一个结果。

对于本题4级流水线而言,处理10条指令所需的
时钟周期数=4+(10-1)=13,而非流水线处理10条指令需4×10=40个时钟周期,所以该流水处理器的加速比为40/13=3.08。

相关文档
最新文档