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

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

2021年陕西理工大学计算机科学与技术专业《计算机组成原理》科目
期末试卷B(有答案)
一、选择题
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、关于浮点数在IEEE754标准中的规定,下列说法中错误的是()。

I.浮点数可以表示正无穷大和负无穷大两个值
Ⅱ.如果需要,也允许使用非格式化的浮点数
Ⅲ.对任何形式的浮点数都要求使用隐藏位技术
IⅣ.对32位浮点数的阶码采用了偏移值为l27的移码表示,尾数用原码表示
4、在C语言程序中,以下程序段最终的f值为()。

Float f=2.5+1e10;f=f-1e10;
A.2.5
B.250
C.0
D.3.5
5、由3个“1”和5个“0”组成的8位二进制补码,能表示的最小整数是()。

A.-126
B.-125
C.-32
D.-3
6、若数据在存储器中采用以低字节地址为字地址的存放方式(小端存储),则十六进制数12345678H按自己地址由小到大依次存为()。

A.12345678
B.87654321
C.78563412
D.34127856
7、关于Cache的3种基本映射方式,下面叙述中错误的是()。

A.Cache的地址映射有全相联、直接和多路组相联3种基本映射方式
B.全相联映射方式,即主存单元与Cache单元随意对应,线路过于复杂,成本太高
C.多路组相联映射是全相联映射和直接映射的一种折中方案,有利于提高命中率
D.直接映射是全相联映射和组相联映射的一种折中方案,有利于提高命中率
8、在计算机系统中,作为硬件与应用软件之间的界面是()。

A.操作系统
B.编译程序
C.指令系统
D.以上都不是
9、只有当程序要执行时,它才会去将源程序翻译成机器语言,而且一次只能读取、翻译并执行源程序中的一行语句,此程序称为()。

A.目标程序
B.编译程序
C.解释程序
D.汇编程序
10、总线的半同步通信方式是()。

A.既不采用时钟信号,也不采用握手信号
B.只采用时钟信号,不采用握手信号
C.不采用时钟信号,只采用握手信号
D.既采用时钟信号,又采用握手信号
11、总线按连接部件不同可分为()。

A.片内总线、系统总线、通信总线
B.数据总线、地址总线、控制总线
C.主存总线I/O总线、DMA总线
D.ISA总线、VESA总线、PCI总线
12、在程序执行过程中,()控制计算机的运行总是处于取指令、分析指令和执行指令的循环之中。

A.控制器
B.CPU
C.指令存储器
D.指令译码器
13、微程序控制器的速度比硬布线控制器慢,主要是因为()。

A.增加了从磁盘存储器读取微指令的时间
B.增加了从主存储器读取微指令的时间
C.增加了从指令寄存器读取微指令的时间
D.增加了从控制存储器读取微指令的时问
14、DMA方式的接口电路中有程序中断部件,其作用是()。

A.实现数据传送
B.向CPU提出总线使用权
C.向CPU提出传输结束
D.发中断请求
15、内部异常(内中断)可分为故障(Fault)、陷阱(Trap)和终止(Abort)三类。

下列有关内部异常的叙述中,错误的是()。

A.内部异常的产生与当前执行指令相关
B.内部异常的检测由CPU内部逻辑实现
C.内部异常的响应发生在指令执行过程中
D.内部异常处理后返回到发生异常的指令继续执行
二、填空题
16、指令格式是指令用_______表示的结构形式,通常格式中由操作码字段和_______字段
组成。

17、存储器的技术指标有存储容量、存取时间、________和________、
18、堆栈是一种特殊的_______寻址方式,它采用_______原理。

按构造不同,分为寄存器
堆栈和_______堆栈。

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

20、2000年,超级计算机最高浮点运算速度达到每秒_______次,我国的_______号计算机的运算速度达到3840亿次,使我国成为_______之后第三个拥有高速计算机的国家。

21、通道是一个特殊功能的______,它有自己的______专门负责数据输入输出的传输控制。

22、为了运算器的高速性,采用了________进位,________乘除法,________等并行技术措施。

23、不同机器有不同的_________RISC指令系统是_________指令系统的改进。

24、数控机床是计算机在_______方面的应用,邮局把信件自动分练是在计算机_______方
面的应用。

25、指令寻址的基本方式有两种,______方式和______方式。

三、名词解释题
26、特权指令:
27、机器周期:
28、阶码:
29、周期窃取:
四、简答题
30、什么是CISC?CISC指令系统的特点是什么?
31、简述微程序控制方式的基本思想。

它有什么优点和缺点?
32、什么叫指令?什么叫微指令?二者有什么关系?
33、什么叫机器指令?什么叫指令系统?为什么说指令系统与机器的主要功能以及与硬件结构之间存在着密切的关系?
五、计算题
34、设有主频24MHz的CPU,平均每条指令的执行时间为两个机器周期,每个机器周期由两个时钟周期组成,试求:
1)机器的工作速度。

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

解:
35、设有一个64K×8位的RAM芯片,试问该芯片共有多少个基本单元电路(简称存储基元)?欲设计一种具有上述同样多存储基元的芯片,要求对芯片字长的选择应满足地址线和数据线的总和为最小,试确定这种芯片的地址线和数据线,并说明有几种解答。

36、已知两个实数x=-68,y=-8.25,它们在C语言中定义为float型变量,分别存放在寄存器A和B中。

另外,还有两个寄存器C和D。

A、B、C、D都是32位寄存器。

请问(要求用十六进制表示二进制序列):
1)寄存器A和B中的内容分别是什么?
2)x和y相加后的结果存放在寄存器C中,寄存器C中的内容是什么?
3)x和y相减后的结果存放在寄存器D中,寄存器D中的内容是什么?注:float型变量在计算机中都被表示成IEEE754单精度格式。

六、综合题
37、写出一个定点8位字长的二进制数在下列情况中所能表示的真值(数值)范围:1)不带符号数表示。

2)原码表示。

3)补码表示。

4)反码表示。

5)移码表示。

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

试问:
1)流水线的操作周期应设计为多少?
2)试给出相邻两条指令发生数据相关的例子(假设在硬件上不采取措施),试分析第2条指令要推迟多少时间进行才不会出错?
3)如果在硬件设计上加以改进,至少需要推迟多少时间?
参考答案
一、选择题
1、D
2、C
3、C
4、C
5、B
6、C
7、D
8、A
9、C
10、D
11、A
12、A
13、D、
14、C
15、D、
二、填空题
16、二进制代码地址码
17、存储周期存储器带宽
18、数据先进后出存储器
19、4 7
20、1万亿神威美国、日本
21、处理器指令和程序
22、先行阵列流水线
23、指令系统 CISC
24、自动控制人工智能
25、字向位向
三、名词解释题
26、特权指令:
改变执行特权的指令,用于操作系统对系统资源的控制
27、机器周期:
指令执行中每一步操作所需的时间。

28、阶码:
B4在浮点数据编码中,表示小数点的位置的代码。

29、周期窃取:
DMA方式中由DMA接口向CPU申请占用总线,占用一个存取周期。

四、简答题
30、答:CISC是复杂指令系统计算机的英文缩写。

其特点是:⑴指令系统复杂庞大,指令数目一般多达2,3百条。

⑵ 寻址方式多⑶指令格式多⑷指令字长不固定⑸ 可访存指令不加限制⑹各种指令使用频率相差很大⑺各种指令执行时间相差很大⑻大多数采用微程序控制器
31、答:(1)微操作命令以为微编码形式变成指令,并固化在rom中(2)讲一条指令
的操作分为若干个微指令序列,用微指令程序对应的解释执行;(3)易于维护,和修改,通用性强,但速度慢;
32、答:指令,即指机器指令。

每一条指令可以完成一个独立的算术运算或逻辑运算操作。

控制部件通过控制线向执行部件发出各种控制命令,通常把这种控制命令叫做微命令,而
一组实现一定操作功能的微命令的组合,构成一条微指令。

许多条微指令组成的序列构成
了微程序,微程序则完成对指令的解释执行。

33、答:人们习惯把每一条机器语言的语句称为机器指令,而又将全部机器指令的集合称为机器的指令系统。

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

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

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)float 型变量在计算机中都被表示成IEEE754单精度格式。

x=-68=-(1000100)2=-1.0001×26,符号位为l,阶码为127+6=128+5=(10000101)2,尾数为
1.0001,所以小数部分为000100000000000 00000000,合起来整个浮点数表示为11000010100010000000000000000000,写成十六进制为C2880000H。

y=-8.25=-(1000.01)2=-1.00001×23,符号位为1,阶码为
127+3=128+2=(100000102,尾数为1.00001,所以小数部分为00001000000000000000000,合起来整个浮点数表示为11000001000001000000000000000000,写成十六进制为Cl040000H。

2)两个浮点数相加的步骤如下。

①对阶:E x=10000101,E y=10000010,则
[E x-E y]补=[Ex]补+[-Ey]补=1000 0101+0111 1110=0000 0011
E x大于E y,所以对y进行对阶。

对阶后,y=-0.00100001×26。

②尾数相加:x的尾数为-1.000100000000000000000,y的尾数为-
0.00100001000000000000000。

用原码加法运算实现,两数符号相同,做加法,结果为-1.0011000 10000000000000000000。

即x加y的结果为-1.00110001×24,所以符号位为1,尾数为00110001000000000000000,阶码为127+6=128+5,即10000101,合起来
为110000101001100010000000 00000000,转换为十六进制形式为
C2988000H。

所以寄存器C中的内容是C2988000H。

3)两个浮点数相减的步骤同加法,对阶的结果也一样,只是尾数相减。

尾数相减:x的尾数为-1.00010000000000000000000,y的尾数为-
0.0010000100000000000 0000。

用原码减法运算实现,两数符号相同,做减法。

符号位取大数的符号,为1:数值部分为大数加小数负数的补码,即
1.00010000000000000000000+1.11011111000000000000000=0.1110 1111000000000000000
x减y的结果为-0.11101111×26=-1.1101111×25,所以符号位为1,尾数为110111100000000 00000000,阶码为127+5=128+4=(10000100)2,合起
来为110000100 110 11110000 000000000000,转换为十六进制形式为
C26F0000H。

所以寄存器D中的内容是C26F0000H。

六、综合题
37、解析:此题考查各种机器数的表示范围:
1)不带符号数表示范围:0~255。

2)原码表示:-127~+127。

3)补码表示:-128~+127。

4)反码表示:-127~+127。

5)移码表示:-128~+127。

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)流水线操作的时钟周期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,而不需要等到写回周期完成,见表。

相关文档
最新文档