2021年沈阳师范大学软件工程专业《计算机组成原理》科目期末试卷B(有答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2021年沈阳师范大学软件工程专业《计算机组成原理》科目期末试卷
B(有答案)
一、选择题
1、存储器采用部分译码法片选时,()。
A.不需要地址译码器
B.不能充分利用存储器空间
C.会产生地址重叠
D.CPU的地址线全参与译码
2、下列关于Cache和虚拟存储器的说法中,错误的有()。
I.当Cache失效(即不命中)时,处理器将会切换进程,以更新Cache中的内容
II.当虚拟存储器失效(如缺页)时,处理器将会切换进程,以更新主存中的内容III.Cache 和虚拟存储器由硬件和OS共同实现,对应用程序员均是透明的
IV.虚拟存储器的容量等于主存和辅存的容量之和
A.I、IⅣ
B.Ⅲ、V
C. I、Ⅱ、Ⅲ
D. I、Ⅲ、Ⅳ
3、若x=103,y=-25,则下列表达式采用8位定点补码运算时,会发生溢出的是()。
A.x+y
B.-x+y
C.x-y
D.x-y
4、关于浮点数在IEEE754标准中的规定,下列说法中错误的是()。
I.浮点数可以表示正无穷大和负无穷大两个值
Ⅱ.如果需要,也允许使用非格式化的浮点数
Ⅲ.对任何形式的浮点数都要求使用隐藏位技术
IⅣ.对32位浮点数的阶码采用了偏移值为l27的移码表示,尾数用原码表示
5、有如下C语言程序段:()
short si=-32767;unsigned short usi=si;执行上述两条语句后,usi的值为
A.-32767
B.32767
C.32768
D.32769
6、总线的半同步通信方式是()。
A.既不采用时钟信号,也不采用握手信号
B.只采用时钟信号,不采用握手信号
C.不采用时钟信号,只采用握手信号
D.既采用时钟信号,又采用握手信号
7、在链式查询方式下,若有N个设备,则()。
A.只需一条总线请求线
B.需要N条总线请求线
C.视情况而定,可能一条,也可能N条
D.以上说法都不对
8、计算机()负责指令译码。
A.算术逻辑单元
B.控制单元(或者操作码译码器)
C.存储器电路
D.输入/输出译码电路
9、()可区分存储单元中在放的是指令还是数据。
A.存储器
B.运算
C.用户
D.控制器
10、在无转发机制的五段基本流水线(取指、译码/读寄存器、运算、访存、写回寄存器)中,下列指令序列存在数据冒险的指令对是()。
I1:addR1,R2,R3;(R2)+(R3)→R1
I2:addR5,R2,R4;(R2)+(R4)→R5
I3:addR4,R5,R3;(R5)+(R3)→R4
I4:addR5,R2,R6;(R2)+(R6)→R5
A.I1和I2
B.I2和I3
C.I2和14
D.I3和14
11、微程序控制器的速度比硬布线控制器慢,主要是因为()。
A.增加了从磁盘存储器读取微指令的时间
B.增加了从主存储器读取微指令的时间
C.增加了从指令寄存器读取微指令的时间
D.增加了从控制存储器读取微指令的时问
12、假定编译器对C源程序中的变量和MIPS中寄存器进行了以下对应:变量f、g、h、
i、i分别对应给寄存器$s0,$s1,$s2,$s3,$s4,并将一条C赋值语句编译后生成如下汇编代码序列:
add $s0,$s1,$s2,
add $t1,$s3,$s4
sub $s0,$t0,$t1
请问这条C赋值语句是()。
A. f=(g+i)-(h+i)
B. f=(g+j)-(h+i)
C. f=(g+ h)-(j +i)
D. f=(j +i)-(g+ h)
13、直接寻址的无条件转移指令的功能是将指令中的地址码送入()。
A.程序计数器(PC)
B.累加器(ACC)
C.指令寄存器(IR)
D.地址寄存器(MAR)
14、下列有关I/O接口的叙述中,错误的是()。
A.状态端口和控制端口可以合用同一个寄存器
B. I/O接口中CPU可访问的寄存器称为I/O端口
C.采用独立编址方式时,I/O端口地址和主存地址可能相同
D.采用统一编址方式时,CPU不能用访存指令访问I/O端口
15、在单级中断系统中,中断服务程序执行顺序是()
a.保护现场:
b.开中断;
c.关中断:
d.保存断点:
e.中断事件处理:
f.恢复现场:
g.中断返回
A.a→e→f→b→g
B. c→a→e→g
C. c→d→e→f→g
D. d→a→c→f→g
二、填空题
16、计算机的_______是计算机_______结构的重要组成部分,也是计算机不同于一般电子设备的本质所在。
17、RISC的中文含义是______,CISC的中文含义是______
18、汉字的_______、_______ 、_______是计算机用于汉字输入、内部处理、输出三种不同用途的编码。
19、不同机器有不同的_________RISC指令系统是_________指令系统的改进。
20、多个用户共享主存时,系统应提供_______。
通常采用的方法是_______保护和_______保护,并用硬件来实现。
21、计算机软件一般分为两大类:一类叫______,另一类叫______操作系统属于______类
22、按IEEE754标准,一个浮点数由_______、_______、_______三个域组成。
23、流水CPU中的主要问题是________相关、________相关和________相关,为此需要采
用相应的技术对策,才能保证流水畅通而不断流。
24、中断处理需要有中断________。
中断________产生,中断________等硬件支持。
25、双端口存储器和多模块交叉存储器属于________存储器结构。
前者采用________技术,后者采用________技术。
三、名词解释题
26、海明距离:
27、MIDI:
28、无条件转移:
29、消息传输方式:
四、简答题
30、试比较程序查询方式、程序中断方式和DMA方式对CPU工作效率的影响。
31、以DMA方式实现传送,大致可分为哪几个阶段?
32、什么是存储保护?通常采用什么方法?
33、请说明程序查询方式与中断方式各自的特点。
五、计算题
34、一台8位微机的地址总线为l6条,其RAM存储器容量为32KB,首地址为4000H,且地址是连续的,可用的最高地址是多少?
35、某计算机的CPU主频为500MHz,所连接的某外设的最大数据传输率为
20KB/s,该外设接口中有一个16位的数据缓存器,相应的中断服务程序的执行时间为500个时钟周期。
请回答下列问题:
1)是否可用中断方式进行该外设的输入输出?若能,在该设备持续工作期间,CPU用于该设备进行输入/输出的时间占整个CPU时间的百分比大约为多少?
2)若该外设的最大数据传输率是2MB/s,则可否用中断方式进行输入输出?
36、某32位计算机,CPU主频为800MHz,Cache命中时的CPI为4,Cache块大小为32B;主存采用8体交叉存储方式,每个体的存储字长为32位、存储周期为40ns;存储器总线宽度为32位,总线时钟频率为200MHz,支持突发传送总线事务。
每次读突发传送总线事务的过程包括送首地址和命令、存储器准备数据和传送数据。
每次突发传送32B,传送地址或32位数据均需一个总线时钟周期。
请回答下列问题,要求给出理由或计算过程。
1)CPU和总线的时钟周期各为多少?总线的带宽(即最大数据传输率)为多少?2)Cache缺失时,需要用几个读突发传送总线事务来完成一个主存块的读取?
3)存储器总线完成一次读突发传送总线事务所需的时间是多少?
4)若程序BP执行过程中,共执行了100条指令,平均每条指令需进行1.2次访存,Cache缺失率为5%,不考虑替换等开销,则BP的CPU执行时间是多少?
六、综合题
37、写出一个定点8位字长的二进制数在下列情况中所能表示的真值(数值)范围:1)不带符号数表示。
2)原码表示。
3)补码表示。
4)反码表示。
5)移码表示。
38、现有4级流水线,分别完成取指、指令译码并取数、运算、回写4步操作,假设完成各部操作的时间依次为100ns,100ns,80ns,50ns。
试问:
1)流水线的操作周期应设计为多少?
2)试给出相邻两条指令发生数据相关的例子(假设在硬件上不采取措施),试分析第2条指令要推迟多少时间进行才不会出错?
3)如果在硬件设计上加以改进,至少需要推迟多少时间?
39、某计算机字节长为16位,主存地址空间大小为128KB,按字编址。
采用单字长指令格式,指令各字段定义如图所示。
15 12 11 6 5 0
转移指令采用相对寻址方式,相对偏移用补码表示,寻址方式的定义见表
寻址方式的定义
回答下列问题:
1)该指令系统最多可有多少指令?该计算机最多有多少个通用寄存器?存储地址寄存器(MAR)和存储器数据寄存器(MDR)至少各需要多少位?
2)转移指令的目标地址范围是多少?
3)若操作码0010B表示加法操作(助记符为add),寄存器R4和R5的编号分别为100B和101B,R4的内容为1234H,R5的内容为5678H,地址1234H中的内容为5678H,地址5678H中的内容为1234H,则汇编语句“add(R4),(R5)+”(逗号前为源操作数,逗号后为目的操作数)对应的机器码是什么(用十六进制表示)?该指令执行后,哪些寄存器和存储单元中的内容会改变?改变后的内容是什么?
参考答案
一、选择题
1、C
2、D
3、C
4、C
5、D
6、D
7、A
8、B
9、D
10、B
11、D、
12、C
13、A
14、D
15、A
二、填空题
16、软件系统
17、精简指令系统计算机复杂指令系统计算机
18、输入编码(或输入码)内码(或机内码)字模码
19、指令系统 CISC
20、存储保护存储区域访问方式
21、系统程序应用程序系统程序
22、符号位阶码尾数
23、资源数据控制
24、优先级仲裁向量控制逻辑
25、并行空间并行时间并行
三、名词解释题
26、海明距离:
在信息编码中,两个合法代码对应位上编码不同的位数。
27、MIDI:
音乐器材数字化接口,规定电子乐器与计算机之间传递信息的方式。
28、无条件转移:
一种转移指令类型,不管状态如何,一律进行转移操作。
29、消息传输方式:
总线的信息传输方式之一,将总线需要传送的数据信息、地址信息,和控制信息等组合成一个固定的数据结构以猝发方式进行传输。
四、简答题
30、答:程序查询方式使CPU和I/0设备处于串行工作状态,CPU工作效率不高程序中断方式CPU效率较高DMA方式进一步提高了CPU的资源利用率,
31、答:(1)DMA传送前的预置阶段(DMA初始化)(2)数据传送阶段(DMA传送)(3)传送后的结束处理
32、答:当多个用户共享主存时,为使系统能正常工作,应防止由于一个用户程序出错而破坏其它用户的程序和系统软件,还要防止一个用户程序不合法的访问不是分给它的主存
区域。
为此,系统提供存储保护。
通常采用的方法是:存储区域保护和访问方式保护.
33、答:程序查询方式,数据在CPU和外围设备之间的传送完全靠计算机程序控制,优
点是硬件结构比较简单,缺点是CPU效率低,中断方式是外围设备用来“主动”通知CPU,准备输入输出的一种方法,它节省了,CPU时间,但硬件结构相对复杂一些。
五、计算题
34、解析:32KB存储空间共占用15条地址线,若32KB的存储地址起始单元为0000H,其范围应为0000H~7FFFH,但现在的首地址为4000H,即首地址后移了,因此最高地址也应该相应后移,故最高地址=4000H+7FFFH=BFFFH。
归纳总结:32KB的存储空间是连续的,由于首地址发生变化,因此术地址也会跟
着发生变化。
35、解析:
1)因为该外设接口中有一个16位数据缓存器,所以,若用中断方式进行输入/输出,可以每16位进行一次中断请求,因此,中断请求的时间间隔为
2B/20KB/s=100μs.
对应的中断服务程序的执行时间为:(1/500MHz)×500=1μs。
因为中断响应过
程就是执行条隐指令的过程,所用时间相对于中断处理时间(执行中断服务程序的时间)而言,几乎可以忽略不计,因而整个中断响应并处理的时间大约为1μs多一点,远远小于中断请求的间隔时间。
因此,可以用中断方式进行该外设的输入输出。
若用中断方式进行该设备的输入/输出,则该设备持续上作期间,CPU用于该设备
进行输入/输出的时间占整个CPU时间的百分比大约为1/100=1%。
2)若外设的最大传输率为2MB/s,则中断请求的时间间隔为106×2B/2MB=1μs。
而整个中断响应并处理的时间大约为1μs多一点,中断请求的间隔时间小于中断响
应和处理时间,即中断处理还未结束就会有该外设新的中断到来,因此不可以用中断方式进行该外设的输入输出
36、解析:
1)CPU的时钟周期为1/800MHz=1.25ns。
总线的时钟周期为1/200MHz=5ns。
总线带宽为4B×200MHz=800MB/s或4B/5ns=800MB/s。
2)因为每次读突发传送32B,而Cache块大小恰好是32B,所以只需要1个
读突发传送总线事务来完成一个主存块的读取。
3)一次读突发传送总线事务包括一次地址传送和32B数据传送:用1个总线
时钟周期传输地址,即5ns;首先,根据低位交叉存储器的工作原理,数据全部读
出需要40ns+(8-1)×5ns=75ns。
但是,在第40ns时,数据的读取与传输是可
以重叠的,所以只需要加上最后一个体读出的数据的传输时间即可,即5ns。
故读
突发传送总线事物时间为5ns+75ns+5ns=85ns。
4)BP的CPU执行时间包括Cache命中时的指令执行时间和Cache缺失时带
来的额外开销。
命中时的指令执行时间:100×4×l.25ns=500n s。
指令执行过程
中Cache缺失时的额外开销:1.2×100×5%×85ns=510ns。
可得,BP的CPU执行时间:500ns+510ns=1010ns。
六、综合题
37、解析:此题考查各种机器数的表示范围:
1)不带符号数表示范围:0~255。
2)原码表示:-127~+127。
3)补码表示:-128~+127。
4)反码表示:-127~+127。
5)移码表示:-128~+127。
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)指令操作码占4位,则该指令系统最多可以有24=16条指令。
由于指令操作数占6位,其中3位指示寻址方式,寄存器编号占3位,因此该计算机最多可以有
23=8个通用寄存器。
由于计算机字长为16位,因此存储器数据寄存器(MDR)至少为16位。
主存空间为128KB,按字(l6位)编址,寻址范围为0~64K,存储器地址寄存器(MAR)需16位(216=64K)。
2)寄存器为16位,指令中可寻址范围至少可达0~216-1。
主存地址空间为
216=64K,寻址范围也应该大于或等于64K。
因此,转移指令的目标地址范围是0~216-1。
3)汇编语句“add(R4).(R5)+”对应的机器码。
对应的机器码写成十六进制为0010001100010101B=2315H:该指令的功能是将R4内容所指存储器单元的内容(源)与R5内容所指存储器单元(目标)的内容相加后,写到R5内容所指的存储器单元。