2022年新疆科技学院计算机科学与技术专业《计算机组成原理》科目期末试卷B(有答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2022年新疆科技学院计算机科学与技术专业《计算机组成原理》科目
期末试卷B(有答案)
一、选择题
1、存储器采用部分译码法片选时,()。
A.不需要地址译码器
B.不能充分利用存储器空间
C.会产生地址重叠
D.CPU的地址线全参与译码
2、某计算机的存储系统由Cache一主存系统构成,Cache的存取周期为10ms,主存的存取周期为50ms。
在CPU执行一段程序时,Cache完成存取的次数为4800次,主存完成的存取次数为200次,该Cache一主存系统的效率是()。
【注:计算机存取时,同时访问Cache和主存,Cache访问命中,则主存访问失效;Cache访问未命中,则等待主存访问】
A.0.833
B.0.856
C.0.95 8
D.0.862
3、一个浮点数N可以用下式表示:
N=mr me,其中,e=rc g;
m:尾数的值,包括尾数采用的码制和数制:
e:阶码的值,一般采用移码或补码,整数;
Tm:尾数的基;
re:阶码的基;
p:尾数长度,这里的p不是指尾数的:进制位数,
当ra=16时,每4个二进制位表示一位尾数;
q:阶码长度,由于阶码的基通常为2,因此,在一般情况下,q就是阶码部分的二进制位数。
研究浮点数表示方式的主要目的是用尽量短的字长(主要是阶码字长q和尾数字长的和)实现尽可能大的表述范围和尽可能高的表数精度。
根据这一目的,上述6个参数中只有3个参数是浮点数表示方式要研究的对象,它们是()。
A.m、e、rm
B. rm、e、rm
C.re、p、q
D. rm、p、q
4、假设机器字长为16位,用定点补码小数表示时,一个字所能表示的范围是()。
A.0~(1-2-15)
B.-(1-2-15)~(1-2-15)
C.-1~1
D.-1~(1-2-15)
5、在定点机中执行算术运算时会产生溢出,其根本原因是()。
A.主存容量不够
B.运算结果无法表示
C.操作数地址过大
D.栈溢出
6、下列关于总线仲裁方式的说法中,正确的有()。
I.独立请求方式响应时间最快,是以增加处理器开销和增加控制线数为代价的
II.计数器定时查询方式下,有,根总线请求(BR)线和一根设备地址线,若每次计数都从0开始,则设备号小的优先级高
III.链式查询方式对电路故障最敏感
IV.分布式仲裁控制逻辑分散在总线各部件中,不需要中央仲裁器
A.III,IV
B. I,III,IV
C. I,II,IV
D.II,III,IV
7、总线的半同步通信方式是()。
A.既不采用时钟信号,也不采用握手信号
B.只采用时钟信号,不采用握手信号
C.不采用时钟信号,只采用握手信号
D.既采用时钟信号,又采用握手信号
8、某计算机主频为1.2GHz,其指令分为4类,它们在基准程序中所占比例及CPI如下表所示。
该机的
MIPS数是()。
A.100
B.200
C.400
D.600
9、下列部件中,CPU存取速度由慢到快的排列顺序正确的是()。
A.外存、主存、Cache、寄存器
B.外存、主存、寄存器、Cache
C.外存、Cache、寄存器、主存
D.主存、Cache、寄存器、外存
10、中断响应是在()
A.一条指令执行开始
B.一条指令执行中间
C.一条指令执行之术
D.一条指令执行的任何时刻
11、某机有4级中断,优先级从高到低为1→2→3→4。
若将优先级顺序修改,修改后1
级中断的屏蔽字为1011,2级中断的屏蔽字为1111.3级中断的屏蔽字为0011,4级中
断的屏蔽字为0001,则修改后的优先顺序从高到低为()。
A.3→2→1→4
B.1→3→4→2
C.2→1→3→4
D.2→3→1→4
12、在CPU的状态字寄存器中,若符号标志位SF为“1",表示运算结果是()。
A.正数
B.负数
C.非正数
D.不能确定
13、单周期处理器中所有指令的指令周期为一个时钟周期。
下列关于单周期处理器的叙述中,错误的是()。
A.可以采用单总线结构数据通路
B.处理器时钟频率较低
C.在指令执行过程中控制信号不变
D.每条指令的CPI为1
14、假设相对寻址的转移指令占两个字节,第一个字节为操作码,第二个字节为位移量(用补码表示),每当CPU从存储器取出一个字节时,即自动完成(PC)+l-PC。
若当
前指令地址是3008H,要求转移到300FH,则该转移指令第二个字节的内容应为();
若当前指令地址为300FH,要求转移到3004H,则该转移指令第二字节的内容为()。
A.05H,F2H
B.07H,F3 H
C.05H,F3H
D.07H,F2H
15、假设某指令的一个操作数采用变址寻址方式,变址寄存器中的值为007CH,地址
007CH中的内容为0124H,指令中给出的形式地址为B000H,地址B000H中的内容为
C000H,则该操作数的有效地址为()。
A.B124H
B.Cl24H
C.B07CH
D.CO7CH
二、填空题
16、一位十进制数,用BCD码表示需______位二进制码,用ASCII码表示需______位二进制码。
17、对存储器的要求是________、________、________为了解决这三个方面的矛盾。
计算机
采用多级存储器体系结构。
18、DMA控制器访采用以下三种方法:________、________、________
19、字节多路通道可允许多个设备进行_______型操作,数据传送单位是_______
20、在计算机术语中,将______和______和在一起称为CPU,而将CPU和______合在一起称为主机。
21、PCI总线采用_______仲裁方式,每一个PCI设备都有独立的总线请求和总线授权两条信号线与_______相连。
22、总线同步定时协议中,事件出现在总线的时刻由________信号确定,总线周期的长度
是________的。
23、软磁盘和硬磁盘的_______记录方式基本相同,但在_______和_______上存在较大差别。
24、当今的CPU芯片除了包括定点运算器和控制器外,还包括_______、_______运算器和_______管理等部件。
25、PCI总线是当前流行的总线。
它是一个高_________且与_________无关的标准总线。
三、名词解释题
26、容量:
27、并行传输:
28、DMA:
29、指令字长度:
四、简答题
30、一个较完善的指令系统应包括哪几类?
31、宽体存储器有什么特点?
32、说明存取周期和存取时间的区别。
33、CPU 对DMA请求和中断请求的响应时间是否相同?为什么?
五、计算题
34、设某机主存容量为16MB,Cache的容量为8KB,且按字节编址。
每字块8个字,每字32位。
设计一个4路组相联映射的Cache组织。
1)画出主存地址字段中各段的位数。
2)设Cache初态为空,CPU依次从主存0,1,2,…,99号单元中读出100个字(主存一次读出一个字),并重复此次序10次,问命中率是多少?
3)若Cache速度是主存速度的5倍,试问有Cache和无Cache相比,速度提高多少倍?
4)系统的效率是多少?
35、设有一个64K×8位的RAM芯片,试问该芯片共有多少个基本单元电路(简称存储基元)?欲设计一种具有上述同样多存储基元的芯片,要求对芯片字长的选择应满足地址线和数据线的总和为最小,试确定这种芯片的地址线和数据线,并说明有几种解答。
36、假设指令字长为16位,操作数的地址码为6位,指令有零地址、一地址和二地址3种格式。
1)设操作码固定,若零地址指令有M种,一地址指令有N种,则二地址指令最多有多少种?
2)采用扩展操作码技术,二地址指令最多有多少种?
3)采用扩展操作码技术,若二地址指令有P条,零地址指令有Q条,则一地址指令最多有几种?
六、综合题
37、设某机有4个中断源A、B、C、D.其硬件排队优先顺序为A>B>C>D,现要求将中断处理顺序改为D>A>C>B。
1)写出每个中断源对应的屏蔽字。
2)按图所示的时间轴给出的4个中断源的请求时刻,画出CPU执行程序的轨迹。
设每个中断源的中断服务程序时间均为20s。
38、在信号处理和科学的应用中,转置矩阵的行和列是一个很重要的问题。
从局部性的角度来看,它也很有趣,因为它的引用模式既是以行为主的,也是以列为主的,例如,考虑下面的转置函数:
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的访问命中情况,并将结果填至下列表格中。
39、某机器字长32位,CPU内有32个32位的通用寄存器,设计一种能容纳64种操作的指令系统,设指令字长等于机器字长。
1)如果主存可直接或间接寻址,采用寄存器-存储器型指令,能直接寻址的最大存储空间是多少?试画出指令格式。
2)在1)的基础上,如果采用通用寄存器作为基址寄存器,则上述寄存器-存储器型指令的指令格式又有何特点?画出指令格式并指出这类指令可访问多大的存储空间。
参考答案
一、选择题
1、C
2、D
3、D
4、D
5、B
6、B
7、D
8、C
9、A
10、C
11、C
12、D
13、A
14、C
15、C
二、填空题
16、4 7
17、容量大速度快成本低
18、停止CPU访问周期挪用 DMA和CPU交替访内
19、传输字节
20、运算器控制器存储器
21、集中式中央仲裁器
22、总线时钟固定
23、存储原理结构性能
24、cache 浮点存储
25、带宽处理器
三、名词解释题
26、容量:
是衡量容纳信息能力的指标。
27、并行传输:
每个数据位都需要单独一条传输线,所有的数据位同时进行传输。
(在采用并行传输方式的总线中,除了有传输数据的线路外,还可以具有传输地址和控制信号的线路,地址线用于选择存储单元和设备,控制线用于传递操作信号)
28、DMA:
称为直接存储器访问,是指数据在主存与外设之间传输,不需要由CPU来对每个字的传输进行控制。
29、指令字长度:
一个指令字所占有的位数.
四、简答题
30、答:包括:数据传送指令、算术运算指令、逻辑运算指令、程序控制指令、输入输出指令、堆栈指令、字符串指令、特权指令等。
31、答:宽体存储器将存储的位数扩到多个字的宽度,访问存储器时可以同时对多个字进行访问,从而提高数据的吞吐率。
32、答:存取周期和存取时间的主要区别是:存取时间仅为完成一次操作的时间,而存取周期不仅包含操作时间,还包含操作后线路的恢复时间。
即:存取周期=存取时间+恢复时间
33、答:CPU对DMA请求和中断请求的响应时间不相同,因为两种方式的交换速度相差很大,因此CPU必须以更短的时间间隔查询并响应DMA请求(一个存取周期末)。
五、计算题
34、解析:
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
35、解析:存储基元总数=64K×8位=512K位=219位。
思路:如要满足地址线和数据线总和最小,应尽量把存储元安排在字向,因为地址位数和字数成2的幂的关系,可较好地压缩线数。
设地址线根数为a,数据线根数为b,则片容量为2a×b=219;b=219-a。
若a=19,b=l,总和=19+1=20;
若a=18,b=2,总和=18+2=20;
若a=17,b=4,总和=17+4=21;
若a=16,b=8,总和=16+8=24;
由上可看出,片字数越少,片字长越长,引脚数越多。
片字数、片位数均按2的幂变化。
通过证明也是能得出结论的,我们要最小化a+b=a+219-4。
令F(a)=a+b=a+219-4,对a求导后,得到1-ln2×a×29。
在1≤a≤l8时,F是单调递减函数,所以在这个区间最小值为F(18)=20,剩下F(19)=20。
所以得出结论:如果满足地址线和数据线的总和为最小,这种芯片的引脚分配方案有两种:地址线=19根,数据线=1根;地址线=18根,数据线=2根。
36、解析:
1)由于操作数的地址码为6位,因此二地址指令中操作码的位数为16-6-6=4位,即操作码只占4位。
又由于操作码固定,因此零地址指令、一地址指令、二地址指令的总和不能超过16。
现已知零地址指令有M种,一地址指令有N种,所有二地址指令最多有16-M-N种。
2)在1)中算得二地址指令的操作码为4位,即最多有20=16条指令。
但是绝对不能取16。
如果取了16,就不能扩展成一地址指令和零地址指令了。
因此,二地址指令最多只能有15条。
3)由于操作码位数可变,且二地址指令、一地址指令和零地址指令的操作码长度分别为4位、10位、16位,因此二地址指令每减少一条,就可以多出26条一地址指令;一地址指令每减少一条,就可以多出26条零地址指令。
根据以上分析,假设一地址指令有X条,则一地址指令最多有(24-P)×26条,零地址指令就应该最多有[(24-P)×26-R]×26条。
根据题中给出的零地址指令有Q条,则可以得出一个公式,如下:
Q=[(24-P)×26-R]×26
可解得:R=(24-P)×26- Q×2-6
六、综合题
37、解析:
1)在中断处理顺序改为D>A>C>B后,每个中断源新的屏蔽字如图所示。
2)根据新的处理顺序,CPU执行程序的轨迹如图所示。
38、解析:
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时,它足够大,能容纳这两个数组。
因此所有不命中都是开始时的不命中。
关系如图所示。
39、解析:
1)根据题意,可设计出如下的指令格式:
其中,操作码占6位,可容纳64种操作;I占1位,表示直接、间接寻址(I=0表示间接寻址:I=1表示直接寻址):由于有32个寄存器,因此R需要占5位:形式地址A占剩下的位数,即32-6-1-5=20位。
因此,直接寻址的最大存储空间为220。
2)如果还需要增加基址寻址,且基址寻址采用通用寄存器,那么必须要增加一个字段来表示基址寄存器到底使用32个中的哪一个通用寄存器,故指令格式变为
其中,操作码占6位,可容纳64种操作;I占2位,表示直接、间接、基址
(I=00表示间接寻址;I=01表示直接寻址;I=10表示基址寻址);由于有32
个寄存器,因此R需要占5位;同理,R1需要5位;形式地址A占剩下的位数,即32-6-2-5-5=14位。
因为通用寄存器为32位,用它做基址寄存器后,可得32
位的有效地址,所以寻址范围可达到232。