您的当前位置:首页正文

2021年华南农业大学软件工程专业《计算机组成原理》科目期末试卷B(有答案)

2021-09-30 来源:钮旅网
2021年华南农业大学软件工程专业《计算机组成原理》科目期末试卷

B(有答案)

一、选择题

1、主存与Cache间采用全相联映射方式,Cache容量4MB,分为4块,每块lMB,主存容量256MB。若主存读/写时间为30ms,Cache的读/写时间为3ns,平均读/写时间为3.27ms,则Cache的命中率为( )。 A.90% B.95% C.97% D.99%

2、某计算机主存按字节编址,由4个64M×8位的DRAM芯片采用交叉编址方式构成,并与宽度为32位的存储器总线相连,主存每次最多读写32位数据。若double型变量x的主存地址为80400lAH,则读取x需要的存储周期数是( )。 A.1 B.2 C.3 D.4

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、十进制数-0.3125的8位移码编码为( )。 A.D8H B.58H C.A8H D.28H

5、为了表示无符号十进制整数,下列哪些是合法的8421BCD码?( ) I.01111001 Ⅱ.11010110 Ⅲ.00001100 Ⅳ.1000010l A.I、IⅡ B.Ⅱ、Ⅲ C.I、Ⅳ D.I、Ⅱ、Ⅲ 6、内部总线(又称片内总线)是指( )。 A.CPU内部连接各寄存器及运算部件之间的总线

B.CPU和计算机系统的其他高速功能部件之间互相连接的总线 C.多个计算机系统之间互相连接的总线 D.计算机系统和其他系统之间互相连接的总线

7、某同步总线采用数据线和地址线复用方式,其中地址/数据线有32根,总线时钟频率为66MHz,每个时钟周期传送两次数据(上升沿和下降沿各传送一次数据),该总线的最大数据传输率(总线带宽)是( )。

A.132MB/s B.264MB/s C.528MB/s D.1056MB/s 8、将高级语言源程序转换为机器目标代码文件的程序是( )。 A.汇编程序 B.链接程序 C.编译程序 D.解释程序 9、完整的计算机系统应该包括( )。 A.运算器、存储器、控制器 B.外部设备和主机 C.主机和应用程序

D.主机、外部设备、配套的软件系统 10、下面是段MIPS指令序列:

add $a3, $s1, $s0 #R[$t3] ←R[$s1] +R($s0]

add $t2, $s0, $s3 #R[$t2]←R[$s0] +R [$s3] Lw $t1,0($t2) #R[$t1] ←M[R[$t2] +0] add $t1, $t1, $t2 #R[$t1] ←R[$t1]+R[$t2] 以上:指令序列中,指令之间发生数据相关?( ) A.1和2,2和3 B.1和2,2和4

C.1和3,2和3,2和4,3和4 D.1和2,2和3,2和4,3和4

11、下列不属于微指令结构设计所追求的目标是( )。 A.提高微程序的执行速度 B.提高微程序设计的灵活性 C.缩短微指令的长度 D.增大控制存储器的容量

12、四地址指令OPA1A2A3A4的功能为(A1)OP(A2)一A3,且A4给出下一条指令地址,假设A1,A2,A3,A4都为主存储器地址,则完成上述指令需要访存( )次。 A.2 B.3 C.4 D.5

13、某指令系统有200条指令,对操作码采用固定长度二进制编码时,最少需要用( )A.4 B.8 C.16 D.32

14、下列选项中,用于提高RAID可靠性的措施有( )。 I.磁盘镜像 II.条带化

III.奇偶校验 IV.增加Cache机制

A.仅I,II B.仅I,III C.仅I,III,IV D.仅II.、III,IV 15、计算机的外部设备指( ) A.输入/输出设备 B.外存储器

C.输入/输出设备和外存储器 D.以上均不正确

二、填空题

16、RISC机器一定是_______CPU,但后者不一定是RISC机器,奔腾机属于_______机器 17、存储器和CPU连接时,要完成______的连接;______的连接和_______的连接,方能正常工作。

18、闪速存储器特别适合于_______微型计算机系统,被誉为_______而成为代替磁盘的一种理想工具。

19、外围设备大体分为输入设备,输出设备,_________设备,_________设备,_________设备五大类。

20、形成指令寻址的方式,称为指令寻址方式,有顺序寻址和_______寻址两种,使用_______来跟踪。

21、在计算机术语中,将______和______和在一起称为CPU,而将CPU和______合在一起称为主机。

22、奔腾CPU中L2级cache的内容是_______的子集,而_______内容又是L2级cache的子集。

23、不同的CRT显示标准所支持的最大________和________数目是不同的。

24、总线仲裁部件通过采用________策略或________策略,选择其中一个主设备作为总线的下次,接管总线控制权。

25、DMA控制器访采用以下三种方法:________、________、________

三、名词解释题

26、操作系统:

27、音频识别:

28、访存局部性:

29、微程序:

四、简答题

30、总线的一次信息传送过程大致分哪几个阶段?

31、什么是堆栈?说明堆栈指针SP的作用。

32、能不能说CPU的主频越快,计算机的运行速度就越快?为什么?

33、 什么是指令周期?什么是机器周期?什么是时钟周期?三者之间的关系如何?

五、计算题

34、设有主频24MHz的CPU,平均每条指令的执行时间为两个机器周期,每个机器周期由两个时钟周期组成,试求: 1)机器的工作速度。

2)假如每个指令周期中有一个是访存周期,需插入两个时钟周期的等待时间,求机器的工作速度。 解:

35、一个直接映射的Cache有128个字块,主机内存包含16K个字块,每个块有16个字,访问Cache的时间是10ms,填充一个Cache字块的时间是200ms,Cache的初始状态为空。

1)如果按字寻址,请定义主存地址字段格式,给出各字段的位宽; 2)CPU从主存中依次读取位置16~210的字,循环读取10次,则访问Cache的命中率是多少?

3)10次循环中,CPU平均每次循环读取的时间是多少?

36、某计算机的字长为16位,存储器按字编址,访存指令格式为16位,其中5位操作码,3位寻址方式字段,分别表示立即寻址、直接寻址、间接寻址、变址寻址和相对寻址这5种,8位地址码字段。设PC和Rx分别为程序计数器和变址寄存器(其中变址寄存器的位数为16位)。试问: 1)该格式能定义多少种指令?

2)各种寻址方式的寻址范围大小是多少? 3)写出各种寻址方式的有效地址EA的计算式。

六、综合题

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、现有4级流水线,分别完成取指、指令译码并取数、运算、回写4步操作,假设完成各部操作的时间依次为100ns,100ns,80ns,50ns。试问: 1)流水线的操作周期应设计为多少?

2)试给出相邻两条指令发生数据相关的例子(假设在硬件上不采取措施),试分析第2条指令要推迟多少时间进行才不会出错?

3)如果在硬件设计上加以改进,至少需要推迟多少时间?

39、某16位机器所使用的指令格式和寻址方式如图所示,该机器有两个20位基址寄存器,4个16位变址寄存器,16个16位通用寄存器。指令汇编格式中的S(源)、D(目标)都是通用寄存器,M是主存的一个单元,3种指令的操作码分别是MOV(OP)=(A)H、STA(OP)=(1B)H、LDA(OP)=(3C)H。其中,MOV是传送指令,STA为写数指令,LDA为读数指令。 1)试分析3种指令的指令格式和寻址方式特点。

2)处理器完成哪一种操作所花时间最短?完成哪一种操作所花时间最长?第2种指令的执行时间有时会等于第3种指令的执行时间吗?

3)下列情况中,每个十六进制指令字分别代表什么操作?简述此指令的作用。

FOFl)H/(3CD2)H:②(2856)H

①(

参考答案

一、选择题

1、D 2、C 3、B 4、B 5、C 6、A 7、C 8、C 9、D 10、D 11、D 12、C 13、B 14、B 15、C

二、填空题

16、流水 CISC

17、顺序寻址方式跳跃寻址方式

18、便携式 固态盘

19、外存 数据通信 过程控制 20、跳跃 程序计数器 21、运算器 控制器 存储器 22、主存 L1级cache 23、分辨率 颜色 24、优先级 公平 主方

25、停止CPU访问 周期挪用 DMA和CPU交替访内

三、名词解释题

26、操作系统:

主要的系统软件,控制其它程序的运行,管理系统资源并且为用户提供操作界面。 27、音频识别:

一个对于音频信息提炼和压缩的过程,如将语音信号转化成文字信息以便于计算机的存储和处理。

28、访存局部性:

CPU的一种存特性,对存储空间的90%的访问局限于存储空间的10%的区域中,而另外10%的访问则分布在90%的区域中。 29、微程序:

存储在控制存储中的完成指令功能的程序,由微指令组成。

四、简答题

30、答:分五个阶段:请求总线、总线仲裁、寻址(目的地址)、信息传送、状态返回(或错误报告)。

31、答:是一种按先进后出的顺序进行存取的数据结构或存储区域。Sp是用来存放最后进堆栈的位置的寄存器;

32、答:不能说机器的主频越快,机器的速度就越快。因为机器的速度不仅与主频有关,还与数据通路结构,时序分配方案、ALU运算能力、指令功能强弱等多种因素有关,要看综合效果。

33、答:指令周期是完成一条指令所需的时间。包括取指令、分析指令和执行指令所需的全部时间。机器周期也称为CPU周期,是指被确定为指令执行过程中的归一化基准时间,通常等于取指时间(或访存时间)。时钟周期是时钟频率的倒数,也可称为节拍脉冲或T周期,是处理操作的最基本单位。一个指令周期由若干个机器周期组成,每个机器周期又由若干个时钟周期组成。

五、计算题

34、1)主频为24MHz的意思是每秒中包含24M个时钟周期,又因为执行一条指令需要4个时钟周期,故机器每秒可以执行的指令数为24M/4=6M条(600万条)。

2)插入两个时钟周期,即执行每条指令需要6个时钟周期,故机器每秒可以执行的指令数为24M/6=4M条,即400万条。

35、解析:

1)按字寻址,每个块有16个字,故字块内地址为4位。Cache有128个字块,故Cache字块地址为8位。主存包含16K个字块,故主存地址总共14位。则主存字块标记位数为14-8-位。

2)Cache中每个块16个字,故16~210位置的字,按照直接映射可分别放入Cache的第1~13块。由于Cache的初始状态为空,循环读取10次时,第一次循环第16、32、48、64、…、208位置的字均末命中,共13次,其他位置均命中,后面9次循环每个字都命中。故Cache的命中率为1-13/(195×10)=99.3%。

4=2

3)第一次循环需要填充Cache13次,访问Cache 195-13=182次,总时间为200ns×13+10ns×182=4420ms。其余9次循环只需访问Cache195次,总时间为195×10ns×9=17550ns。故平均访问时间为(17550ns+4420ns)/10=2197ns。

36、解析:

1)5位操作码可表示25=32种不同的指令。 2)各种寻址方式的寻址范围大小如下。 立即数寻址方式:只能访问唯一的一个数据。

直接寻址方式:用地址码表示存储器地址,8位地址码可以有28=256个数据字。 间接寻址方式需要分为两种(特别注意):

①一次间接寻址:用地址码表示地址的存储位置,存储器中16位的地址可以有216=64K大小的寻址范围。

②多次间接寻址:多次间接寻址需要使用一位来表示是否为最后一次间接寻址,可以有215=32K大小的寻址范围。

变址寻址方式:用地址码表示地址的偏移量,地址在寄存器中,16位变址寄存器的寻址范围是216。

相对寻址方式:寻址范围是PC值附近的字,8位地址偏移量可对PC附近的256个数据字进行寻址,即寻址范围是256个数据字。 3)设地址码位A,各寻址方式的有效地址见表

六、综合题

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、解析:

1)流水线操作的时钟周期T应按4步操作中所需时问最长的一个步骤来考虑,所以T=100ns.

2)两条指令发生数据相关冲突的例子如下: ADD R1,R2,R3(R2)+(R3)→R1 (将寄存器R2和R3的内容相加存储到寄存器RI) SUB R4,R1,R5(R1)-(R5)→R4

(将寄存器R1的内容减去寄存器R5的内容,并将相减的结果存储到寄存器R4) 分析如下:首先这两条指令发生写后读(RAW)相关。两条指令在流水线中的执行情况见表。

ADD指令在时钟4时将结果写入寄存器堆(R1),但SUB指令在时钟3时读寄存器堆

(R1)。本来ADD指令应先写入R1,SUB指令后读R1,结果变成SUB指令先读R1.ADD指令后写R1,因而发生数据冲突。如果硬件上不采取措施,则第2条指令SUB至少应该推迟两个时钟周期(2×100ns),即SUB指令中的指令译码并取数周期应该在ADD指令的写回周期之后才能保证不会出错,见表。

3)如果硬件上加以改进,则只延迟一个时钟周期即可(100ns)。因为在ADD指令中,运算周期就已经将结果得到了,可以通过数据旁路技术在运算结果得到的时候将结果快速地送入寄存器RI,而不需要等到写回周期完成,见表。

39、解析:

1)第一种指令是单字长二地址指令,属于RR型。

第二种指令是双字长二地址指令,属于RS型,其中S采用基址寻址或变址寻址,R由源寄存器决定。

第三种也是双字长二地址指令,属于RS型,其中R由目标寄存器决定,S由20位地址(直接寻址)决定。

2)处理器完成第一种指令所花的时间最短,因为是RR型指令,不需要访问存储器。第二种指令所花的时间最长,因为是RS型指令,需要访问存储器,同时要进行寻

址方式的变换运算(基址或变址),这也要时间。第二种指令的执行时间不会等于第三种指令,因为第三种指令虽然也访问存储器,但是节省了求有效地址的时间开销。

3)根据已知条件:MOV(OP)=001010:STA(OP)=011011;LDA(OP)=111100,将指令的十六进制格式转换成二进制代码且比较后可知:

①由于(FOF1)H/(3CD2)H前面六位为111100,因此该指令代表LDA指令。完整的二进制代码为111100001111000100111100110]0010,前面111100代表操作码,00代表横线的内容,1111代表目标寄存器,含义是把主存(13CD2)

H地址单元的内容送至15号寄存器。

②由于(2856)H前面6位为001010,因此该指令代表MOV指令。完整的二进制代码为0010100001010110,其中后面的0l01和0110分别代表目标寄存器和源寄存器,含义是把6号源寄存器的内容传送至5号目标寄存器。

因篇幅问题不能全部显示,请点此查看更多更全内容