2021年南京邮电大学通达学院软件工程专业《计算机组成原理》科目期末试卷A(有答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2021年南京邮电大学通达学院软件工程专业《计算机组成原理》科目
期末试卷A(有答案)
一、选择题
1、Cache用组相联映射,一块大小为128B,Cache共64块,4块分一组,主存有4096块,主存地址共需()位。
A.19
B.18
C.17
D.16
2、下述说法中正确的是()。
I.半导体RAM信息可读可写,且断电后仍能保持记忆
Ⅱ.动态RAM是易失性RAM,而静态RAM中的存储信息是不易失的
Ⅲ.半导体RAM是易失性RAM,但只要电源不断电,所存信息是不丢失的
IV.半导体RAM是非易失性的RAM
A.I、Ⅲ
B.只有Ⅲ
C.Ⅱ、IV
D.全错
3、并行加法器中,每位全和的形成除与本位相加两数数值位有关外,还与()有
A.低位数值大小
B.低位数的全和
C.高位数值大小
D.低位数送来的进位
4、某字长为8位的计算机中,已知整型变量x、y的机器数分别为
[x]补=11110100,[y] 补=l0110000。
若整型变量z=2x+y/2,则z的机器数为()。
A.11000000
B.00100100
C.10101010
D.溢出
5、在定点机中执行算术运算时会产生溢出,其根本原因是()。
A.主存容量不够
B.运算结果无法表示
C.操作数地址过大
D.栈溢出
6、下列关于多总线结构的叙述中,错误的是()。
A.靠近CPU的总线速度较快
B.存储器总线可支持突发传送方式
C.总线之间需通过桥接器相连
D.PCI-Expressx16采用并行传输方式
7、控制总线主要用来传送()。
I.存储器和1/O设备的地址码
II.所有存储器和I/O设备的时序信号
III.所有存储器和1/O设备的控制信号
IV.来自I/O设备和存储器的响应信号
A.II、III
B. I,III,IV
C. III,IV
D.II,III. IV
8、假定机器M的时钟频率为200MHz,程序P在机器M上的执行时间为12s。
对P优
化时,将其所有乘4指令都换成了一条左移两位的指令,得到优化后的程序P。
若在M
上乘法指令的CPl为102,左移指令的CPl为z,P的执行时间是P”执行时间的1.2倍,则P中的乘法指令条数为()。
A.200万
B.400万
C.800万
D.1600万
9、CPU中的译码器要用()。
A.地址译码人
B.指令译码
C.数据译码1
D.控制信号译码
10、下列关于主存储器(MM)和控制存储器(CS)的叙述中,错误的是()。
A.MM在CPU外,CS在CPU内
B.MM按地址访问.CS按内容访问
C.MM存储指令和数据,CS存储位置
D.MM用RAM和ROM实现,CS用ROM实现
11、()不是常用三级时序系统中的一级。
A.指令周期
B.机器周期
C.节拍
D.定时脉冲
12、在各种寻址方式中,指令的地址码字段可能的情况有()。
I.寄存器编号
Ⅱ.设备端口地址
Ⅲ.存储器的单元地址
Ⅳ.数值
A. I、Ⅱ
B. I、Ⅱ、Ⅲ
C. I、Ⅲ
D.I、Ⅱ、Ⅲ、IV
13、零地址双操作数指令不需要指出操作数地址,这是因为()。
A.操作数已在数据缓冲寄存器中
B.操作数隐含在累加器中
C.操作数地址隐含在堆栈指针中
D.利用上一条指令的运算结果进行操作
14、在具有中断向量表的计算机中,中断向量地址是()。
A.子程序入口地址
B.中断服务程序入口地址
C.中断服务程序入口地址的地址
D.例行程序入口地址
15、传输一幅分辨率为640像素×480像素、65 536色的图片(采用无压缩方式),假设采用数据传输速度为56kbit/s,大约需要的时间是()。
A.34.82s
B.42.86s
C.85.71s
D.87.77s
二、填空题
16、RISC机器一定是_______CPU,但后者不一定是RISC机器,奔腾机属于_______机器
17、主存储器容量通常以KB表示,其中K=______;硬盘容量通常以GB表示,其中
G=______
18、运算器的两个主要功能是:_______,_______
19、外围设备大体分为输入设备,输出设备,_________设备,_________设备,_________设备五大类。
20、广泛使用的_______和_______都是半导体随机读写存储器,它们共同的缺点是_______
21、CPU能直接访问______和______但不能直接访问磁盘和光盘。
22、当今的CPU芯片除了包括定点运算器和控制器外,还包括_______、_______运算器和_______管理等部件。
23、一位十进制数,用BCD码表示需要________位二进制码,用ASCII码表示需要
________位二进制码。
24、寻址方式按操作数的物理位置不同,多使用________型和________型,前者比后者执行速度快。
25、双端口存储器和多模块交叉存储器属于________存储器结构。
前者采用________技术,后者采用________技术。
三、名词解释题
26、主机:
27、通道命令:
28、块表:
29、码元:
四、简答题
30、中断处理过程包括哪些操作步骤?
31、计算机指令中一般包含哪些字段?各有什么作用?
32、控制单元的功能是什么?其输入受什么控制?
33、原理性地说明条件相对转移指令的指令格式和执行步骤。
五、计算题
34、已知计算机的字长为32位,存储器的容量为1MR.如果按字节、半字、字、双字寻址,寻址范围各是多少?
35、用一个时钟频率为40MHz的处理器执行标准测试程序,它所包含的混合指令数和响应所需的时钟周期见表。
试求出有效的CPI、MIPS速率和程序的执行时间(假设有N条指令)。
36、假设一个32位的处理器配有16位的外部数据总线,时钟频率为50MHz,若总线传输的最短周期为4个时钟周期,试问处理器的最大数据传输率是多少?若想提高一倍数据传输率,可采用什么措施?
六、综合题
37、某计算机存储器按字节编址,虚拟(逻辑)地址空间大小为16MB,主存(物理》地址空间大小为1MB,页面大小为4KB;Cache采用直接映射方式,共8行;
主存与Cache之闸交换的块大小为32B。
系统运行到某一时刻时,页表的部分内容
和Cache的部分的容如图3-50和图3-51所示,图中页框号及标记字段的内容为十
六进制形式。
请回答下列问题:
1)虚拟地址共有几位,哪几位表示虚页号?物理地址共有几位?哪几位表示页框
号(物人理页号)?
2)使用物理地址访问Cache时,物理地址应划分成哪几个字段?要求说明每个字
段的位数及在物理地址中的位置。
3)虚拟地址001C60H所在的页面是否在主存中?若在主存中,则该虚拟地址对应的物理地址是什么?访问该地址时是否Cache命中?要求说明理由。
4)假定为该机配置一个4路组相连的TLB,该TLB共可存放8个页表项,若其当前
内容(十六进制)如图所示,则此时虚拟地址024BACH所在的页面是否在主存中?要求说明理由。
38、某程序中有如下循环代码段p:“for(int i= 0;i < N;i++)
sum+=A[i];”。
假设编译时变量sum和i分别分配在寄存器R1和R2中。
常量N在寄存器R6中,数组A的首地址在寄存器R3中。
程序段P起始地址为0804 8100H,对应的汇编代码和机器代码见下表。
执行上述代码的计算机M采用32位定长指令字,其中分支指令bne采用如下格式:
OP为操作码:Rs和Rd为寄存器编号:OFFSET为偏移量,用补码表示。
请回答下列问题,并说明理由。
1)M的存储器编址单位是什么?
2)已知sll指令实现左移功能,数组A中每个元素占多少位?
3)表中bne指令的OFFSET字段的值是多少?已知bne指令采用相对寻址方式,当前,PC内容为bne指令地址,通过分析题表中指令地址和bne指令内容,推断出bne指令的转移目标地址计算公式。
4)若M采用如下“按序发射、按序完成”的5级指令流水线:IF(取指)、ID (译码及取数)、EXE(执行)、MEM(访存)、WB(写回寄存器),且硬件不采取任何转发措施,分支指令的执行均引起3个时钟周期的阻塞,则P中哪些指令的执行会由于数据相关而发生流水线阻塞?哪条指令的执行会发生控制冒险?为什么指令1的执行不会因为与指令5的数据相关而发生阻塞?
39、某机器字长32位,CPU内有32个32位的通用寄存器,设计一种能容纳64种操作的指令系统,设指令字长等于机器字长。
1)如果主存可直接或间接寻址,采用寄存器-存储器型指令,能直接寻址的最大存储空间是多少?试画出指令格式。
2)在1)的基础上,如果采用通用寄存器作为基址寄存器,则上述寄存器-存储器型指令的指令格式又有何特点?画出指令格式并指出这类指令可访问多大的存储空间。
参考答案
一、选择题
1、A
2、D
3、D
4、A
5、B
6、D
7、D
8、B
9、B
10、B
11、A
12、D
13、C
14、C
15、D
二、填空题
16、流水 CISC
17、210 230
18、算术运算逻辑运算
19、外存数据通信过程控制
20、SRAM DRAM 断电后不能保存信息
21、cache 主存
22、cache 浮点存储
23、4 7
24、RR RS
25、并行空间并行时间并行
三、名词解释题
26、主机:
主机中包含了除输入输出设备以外的所有电路部件,是一个能够独立工作的系统。
27、通道命令:
通道自己专门用来处理输入输出事务的指令
28、块表:
主存-cache地址映像机制,由查块表判定主存地址的存储单元是否在cache中以及在cache中的位置。
29、码元:
信息传输通道中,携带数据信息的信号单元。
四、简答题
30、答:中断处理过程如下:
⑴设备提出中断请求;
⑵当一条指令执行结束时CPU响应中断
⑶CPU设置“中断屏蔽”标志,不再响应其它中断请求
⑷保存程序断点(PC)
⑸硬件识别中断源(移到中断服务子程序入口地,址)
⑹用软件方法保存CPU现场
⑺为设备服务
⑻恢复CPU现场
⑼“中断屏蔽”标志复位,以便接收其它设备中断请求
⑽返回主程序
31、答:包含地址码和操作吗;操作码表示操作的类型;地址码一半表示操作数和操作结果的存储位置
32、答:控制单元具有发出各种微操作命令序列的功能
33、解析:
1)按指令功能分类,一般可将指令分为以下几类:
①算术和逻辑运算指令:每台计算机都不可或缺的指令,用来完成算术逻辑运算。
②移位指令:用来完成算术移位和逻辑移位。
③数据传送指令:用来完成CPU与主存储器之间的数据传送,在统一编址的机器中还可以用来完成CPU与I/O设备的数据传送。
④转移指令、子程序调用与返回指令:主要用来改变指令执行次序的问题。
⑤其他指令:停机指令,开、关中断指令等。
2)按操作数个数分类,一般可分为:
①零操作数指令。
②单操作数指令。
③双操作数指令。
④多操作数指令。
五、计算题
34、解:首先1MB=8Mhit(为了在后面的计算中单位统一)按字节寻址时,寻址范围为:
8Mbit/8bit=lMB。
按半字寻址时,寻址范围为:8Mbit/16bit=512KB。
按字寻址时,寻址范围为:
8Mbit/32bit=256KB。
按双字寻址时,寻址范围为:8Mbit/64bit=128KB。
35、解:CPI即执行一条指令所需的时钟周期数。
本标准测试程序共包含4种指令,那么CPl就是这4种指令的数学期望,故
CPl=1×60%+2×18%+4×12%+8×10%=2.24
MIPS即每秒执行百万条指令数。
已知处理器的时钟频率为40MHz,即每秒包含40M个时钟周期,故
MIPS=40/CPl=40/2.24≈17.9
程序执行时间自然就等于程序包含的指令数×CP1x时钟周期的长度,
故程序执行时间=N×2.24×1/40MHz=5.6N×10-8s
36、解析:根据时钟频率可计算出总线传输的最短传输周期为
T=4/(50MHz)=80×10-9s
对于总线宽度为16位的总线,最大数据传输率为
16bit/T=2B/(80×10-9s)=25MB/s
若想提高一倍数据传输率,可采用两种方式:
1)将总线宽度扩大为32bit,CPU时钟频率仍为50MHz,则数据传输率为
32bit/T-4B/(80×10-9s)=50MB/s
2)将时钟频率扩大为100MHz,总线宽度仍为16bit,根据时钟频率可计算出总线传输的最短传输周期为
T=4/(100MHz)=40×10-9s
此时最大数据传输率为
16bit/T=2B/(40×10-9s)=50MB/s
六、综合题
37、解析:1)由于虚拟地址空间大小为16MB,且按字节编址,因此虚拟地址共有24位(24=16M)。
由于页面大小为4KB(212=4K),因此虚页号为前12位。
由于主存(物理)地址空间大小为1MB,因此物理地址共有20位(220=lM)。
由于页内地址有12位,因此20-12=8,即前8位为页框号。
2)由于Cache采用直接映射方式,因此物理地址应划分成3个字段,如下:
分析:由于块大小为32B,因此字块内地址占5位。
又由于Cache共8行,因此字块标记占3位。
综上所述,主存字块标记占20-5-3=12位。
3)虚拟地址001C60H的虚页号为前12位,即001H=1。
查表可知,其有效位为1,故在内存中。
虚页号为l对应页框号为04H,故物理地址为04C60H。
由于采用的是直接映射方式,因此对应Cache行号为3。
尽管有效位为1,但是由于标记位04CH#105H,故不命中。
4)由于采用了4路组相连的,因此TLB被分为2组,每组4行。
因此,虚地址应划分成3个字段,如下:
将024BACH转成二进制为000000100100101110101100,可以看出组号为0。
标记为00000010010,换成十六进制为000000010010(高位补一个0),即012H,从图3-51中的0组可以看出,标记为012H页面的页框号为1F,故虚拟地址024BACH所在的页面在主存中。
38、解答:该题为计算机组成原理科目的综合题型,涉及指令系统、存储管理以及CPU三个部分内容,考生应注意各章节内容之间的联系,才能更好的把握当前考试的趋势。
1)已知计算机M采用32位定长指令字,即一条指令占4B,观察表中各指令的地址可知,每条指令的地址差为4个地址单位,即4个地址单位代表4B,一个地址单位就代表了1B,所以该计算机是按字节编址的。
2)在二进制中某数左移两位相当于以乘四,由该条件可知,数组间的数据间隔为4个地址单位,而计算机按字节编址,所以数组A中每个元素占4B。
3)由表可知,bne指令的机器代码为1446FFFAH,根据题目给出的指令格式,后2B的内容为OFFSET字段,所以该指令的OFFSET字段为FFFAH,用补码表示,值为-6.当系统执行到bne指令时,PC自动加4,PC的内容就为08048118H,而跳转的目标是08048100H,两者相差了18H,即24个单位的地址间隔,所以偏移址的一位即是真实跳转地址的-24/(-6)=4位。
可知bne指令的转移目标地址计算公式为(PC)+4+OFFSET*4。
4)由于数据相关而发生阻塞的指令为第2、3、4、6条,因为第2、3、4、6条指令都与各自前一条指令发生数据相关。
第6条指令会发生控制冒险。
当前循环的第五条指令与下次循环的第一条指令虽然有数据相关,但由于第6条指令后有3个时钟周期的阻塞,因而消除了该数据相关。
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。