2022年海南师范大学计算机科学与技术专业《计算机组成原理》科目期末试卷A(有答案)

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

2022年海南师范大学计算机科学与技术专业《计算机组成原理》科目
期末试卷A(有答案)
一、选择题
1、Cache用组相联映射,一块大小为128B,Cache共64块,4块分一组,主存有4096块,主存地址共需()位。

A.19
B.18
C.17
D.16
2、存储器采用部分译码法片选时,()。

A.不需要地址译码器
B.不能充分利用存储器空间
C.会产生地址重叠
D.CPU的地址线全参与译码
3、4位机器内的数值代码,则它所表示的十进制真值可能为()。

I.16 Ⅱ.-1 Ⅲ.-8 V.8
A. I、V、Ⅲ
B.IⅡ、IⅣ
C.Ⅱ、Ⅲ、IV
D.只有V
4、假设编译器规定int 和shot类型长度分别为32位和16位,若有下列C语言语句:
unsigned short x=65530;
unsigned int y=x;得到y的机器数为()。

A.00007FFAH
B.0000 FFFAH
C.FFFF 7FFAH
D.FFFF FFFAH
5、在C语言程序中,以下程序段最终的f值为()。

Float f=2.5+1e10;f=f-1e10;
A.2.5
B.250
C.0
D.3.5
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、指令寄存器的位数取决()。

A.存储器的容量
B.指令字长
C.机器字长人
D.存储字长
9、只有当程序要执行时,它才会去将源程序翻译成机器语言,而且一次只能读取、翻译并执行源程序中的一行语句,此程序称为()。

A.目标程序
B.编译程序
C.解释程序
D.汇编程序
10、在中断周期,CPU主要完成以下工作()。

A.关中断,保护断点,发中断响应信号并形成中断服务程序入口地址
B.开中断,保护断点,发中断响应信号并形成中断服务程序入口地址
C.关中断,执行中断服务程序
D.开中断,执行中断服务程序
11、计算机的外部设备指()
A.输入/输出设备
B.外存储器
C.输入/输出设备和外存储器
D.以上均不正确
12、在无转发机制的五段基本流水线(取指、译码/读寄存器、运算、访存、写回寄存器)中,下列指令序列存在数据冒险的指令对是()。

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
13、某计算机主存地址空间大小为256MB,按字节编址。

虚拟地址空间大小为
4GB,采用页式存储管理,页面大小为4KB,TLB(快表)采用全相联映射,有4
个页表项,内容见下图
对虚拟地址03FFF180H进行虚实地址变换的结果是()。

A.015 3180H
B.003 5180H
C.TLB缺失
D.缺页
14、某机器采用16位单字长指令,采用定长操作码,地址码为5位,现已定义60条地
址指令,那么单地址指令最多有()条。

A.4
B.32
C.128
D.256
15、下列不属于程序控制指令的是()。

A.无条件转移指令
B.条件转移指令
C.中断隐指令
D.循环指令
二、填空题
16、计算机软件一般分为两大类:一类叫______,另一类叫______操作系统属于_______类。

17、寻址方式按操作数的物理位置不同,多使用________型和________型,前者比后者执
行速度快。

18、按照总线仲裁电路的位置不同,可分为________仲裁和________仲裁。

19、移码表示法主要用于表示浮点数的_______码,以利于比较两个_______数的大小和进
行操作。

20、主存储器容量通常以MB表示,其中M=______,B=______硬盘容量通常以GB表示,其中G =______.
21、从操作数的物理位置来说,可将指令归结为三种类型:存储器-存储器型,_______
22、流水CPU中的主要问题是________相关、________相关和________相关,为此需要采
用相应的技术对策,才能保证流水畅通而不断流。

23、RISC机器一定是_______CPU,但后者不一定是RISC机器,奔腾机属于_______机器
24、按IEEE754标准,一个浮点数由_______、_______、_______三个域组成。

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

三、名词解释题
26、纠错码:
27、四边沿协议(全互锁):
28、CRT:
29、堆栈:
四、简答题
30、何谓CRT的显示分辨率、灰度级?
31、什么是指令格式?计算机指令为什么要有一定的格式?
32、何谓分布式仲裁方式?
33、在什么条件下,I/0设备可以向CPU提出中断请求?
五、计算题
34、假设机器字长为16位,其中阶码6位(包含两位阶符),尾数10位(包含两位数符)。

已知十进制数x=125,y=-18.125,试计算[x-y]。

(其结果用二进

制真值表示,舍入时采用0舍l入法)。

35、设存储字长和指令字长均为24位,若指令系统可完成108种操作,且具有直接、一一次间接寻址、多次间接寻址、变址、基址、相对和立即这7种寻址方式,则可在保证最大范围内直接寻址的前提下,指令字中操作码占几位?寻址特征位占几位?可直接寻址的范围是多少?一次间接寻址的范围是多少?多次间接寻址的范围又是多少?
36、假设某字长为8位的计算机中,带符号整数采用补码表示,x=-68,y=-80,x 和y分别存放在寄存器A和B中。

请回答下列问题(要求最终用十六进制表示二进制序列):
1)寄存器A和B中的内容分别是什么?
2)若x和y相加后的结果存放在寄存器C中,则寄存器C中的内容是什么?运算结果是否正确?此时,溢出标志(OF)、符号标志(SF)和零标志(ZF)各是什么?加法器最高位的进位C。

是什么?
3)若x和y相减后的结果存放在寄存器D中,则寄存器D中的内容是什么?运算结果是否正确?此时,溢出标志(OF)、符号标志(SF)和零标志(ZF)各是什么?加法器最高位的进位C n是什么?
4)若将加法器最高位的进位Cn作为进位标志(CF),则能否直接根据CF的值对两个带符号整数的大小进行比较?
六、综合题
37、某机采用微程序控制方式,微指令字长为24位,采用水平型字段直接编码控制方式和断定方式。

共有微命令30个,构成4个互斥类,各包含5个、8个、14个和3个微命令,外部条件共3个。

1)控制存储器的容量应为多少?
2)设计出微指令的具体格式。

38、假定在一个8位字长的计算机中运行如下类C程序段:
unsigned int x=134;
unsigned int y=246;
int m=x;
int n=y;
unsigned int z1=x-y;
unsigned int z2=x+y;
int k l=m-n;
int k2=m+n;
若编译器编译时将8个8位寄存器R1~R8分别分配至变量x、y、m、n、z l、z2、k l和k2,则回答下列问题(提示:带符号整数用补码表示):
1)执行上述程序段后,寄存器R1,R5和R6的内容分别是什么(用十六进制
表示)?
2)执行上述程序段后,变量m和k1的值分别是多少(用十进制表示)?
3)上述程序段涉及带符号整数加/减、无符号整数加/减运算,这4种运算能
否利用同一个加法器及辅助电路实现?简述理由。

4)计算机内部如何判断带符号整数加/减运算的结果是否发生溢出?上述程
序段中,哪些带符号整数运算语句的执行结果会发生溢出?
39、一条双字长的取数指令(LDA)存于存储器的200和201单元,其中第一个字
为操作码OP和寻址特征M,第二个字为形式地址A。

假设PC当前值为200(还没
有取该条双字长指令),变址寄存器IX的内容为100,基址寄存器的内容为200,
存储器相关单元的内容见表。

存储器相关单元的内容
器ACC的内容(ACC中存放的其实就是有效地址对应的操作数),试补全表。

参考答案
一、选择题
1、A
2、C
3、D
4、B
5、C
6、D
7、D
8、B
9、C
10、A
11、C
12、B
13、A
14、A
15、C
二、填空题
16、系统软件应用软件系统软件
17、RR RS
18、集中式分布式
19、阶码指对阶
20、220 8位(1个字节) 230
21、寄存器一寄存器型寄存器一存储器型
22、资源数据控制
23、流水 CISC
24、符号位阶码尾数
25、外存数据通信过程控制
三、名词解释题
26、纠错码:
能够发现某些错误并且具有自动纠错能力的数据编码。

27、四边沿协议(全互锁):
全互锁的总线通信异步方式,就绪信号和应答信号的上升边沿和下降边沿都是触发边沿。

28、CRT:
阴极射线管,显示器的一种。

29、堆栈:
数据的写入写出不需要地址,按先进后出的顺序读取数据的存储区,
四、简答题
30、答:分辨率是指显示器所能表示的像素个数。

像素越密,分辨率越高,图像越清晰。

分辨率取决于显像管荧光粉的粒度、荧光屏的尺寸和CRT电子束的聚焦能力。

同时刷新存储器要有与显示像素数相对应的存储空间,用来存储每个像素的信息。

灰度级是指黑白显示器中所显示的像素点的亮暗差别,在彩色显示器中则表现为颜色的不同。

灰度级越多,图像层次越清楚逼真。

31、答:对计算机指令的编码的格式称为指令格式;以便计算机能区分指令和数据;
32、答:分布式仲裁是以优先级仲裁策略为基础的仲裁方式。

它不需要中央仲裁器,每个潜在的主方功能模块都有自己的仲裁号和仲裁器。

当它们有总线请求时,把它们唯一的仲
裁号发送到共享的仲裁总线上,每个仲裁器将仲裁总线上得到的号与自己的号进行比较。

如果仲裁总线上的号大,则它的总线请求不予响应,并撤销它的仲裁号。

最后,获胜者的
仲裁号保留在仲裁总线上
33、答:I/0设备向CPU提出中断请求的条件是:I/0接口中的设备工作完成状态为1
(D=1),中断屏蔽码为0(MASK=0),且CPU查询中断时,中断请求触发器状态为
1(INTR=1)。

五、计算题
34、64.解析:首先将x和y转换成浮点数
x=125=0.11111010×2011
y=-18.125=-0.10010001×20101
由于j x=00,0111,因此[j x]补=00,0111,同理[-j y]补=11,1011故
[j x]补=00,0111;00.11111010
[-j y]补=00,0101;11.01101111
下面可以按照5个步骤来做:
1)对阶。

求阶差:
[∆j]补=[j x]补-[j x]补=[j x]补+[-j y]补。

=000111+111011=000010
所以y的阶码要低2,故应该y向x对齐,y尾数需要右移两位,阶码加2,如下:
[y]补=000111,11.110110112)
2)尾数求差。

00.11111010
+00.00100101(这里加的是y尾数的负数补码)
01.00011111
即[x-y]补=00,0111;01.00011111。

3)规格化。

尾数出现01.×××…x,说明需要右规一次即可,阶码加1,最后
可得
[x-y]补=00,1000;00.100011111(加了下画线的1为右规丢弃的1)
4)舍入处理。

山于右规低位丢1,因此尾数末位加1,即尾数变为
00.10010000。

5)溢出判断。

最后阶符为00,没有溢出,最后应将[x-y]补=001000,
00.10010000转换为二进制真值,即500
x-y=0.10010000×2001000=0.10010000×28=10010000
35、解析:
1)由于此指令系统可完成108种操作,因此指令字中的操作码占7位(27=128)。

2)由于指令系统中有7种寻址方式,因此寻址特征位占3位。

3)由于地址码的位数为24-7-3=14位,因此直接寻址的范围为214。

4)由于存储字长为24位,因此一次间接寻址的范围为224。

5)由于多次间接寻址需要使用一位来标志是否间接寻址完毕,因此只有23位用做寻址,寻址范围为223。

36、解析:
1)[-68]补=[-1000100B]补=10111100B=BCH。

[-80]补=[-1010000B]补=10110000B=B0H。

所以,寄存器A和寄存器B中的内容分别是BCH和BOH。

2)①[x+y]补=[x]补+[y]补=10111100B+10110000B=(1)0110100B=6CH,最高位前面的一位1被丢弃,因此,寄存器C中的内容为6CH。

2②寄存器C中的内容为6CH,对应的真值为+108,而x+y的正确结果应是-68+(-80)-148,故结果不正确。

③溢出标志位(OF)可采用以下任意一条规则判断得到。

规则1:若两个加数的符号位相同,但与结果的符号位相异,则溢出。

规则2:若最高位上的进位和次高位上的进位不同,则溢出。

通过这两个规则都能判断出结果溢出,即溢出标志位(OF)为1,说明寄存器C中
的内容不是正确的结果。

结果的第一位0为符号标志(SF),表示结果为整数。


为结果不为0,所以零标志ZF=0。

综上,溢出标志(OF)为1,符号标志(SF)为0,零标志(ZF)为0。

④加法器最高位向前的进位C n为l。

3)①[x-y]=[x]补+[-y]补=10111100B+01010000B=(1)
00001100B=OCH,最高位前面的一位1被丢弃,因此,寄存器D中的内容为CH。

②对应的真值为+12,结果正确。

③两个加数的符号位相异一定不会溢出,因此溢出标志(OF)为0,说明寄
存器D中的内容是真正的结果:结果的第一位0为符号标志(SF),表示结果为正数:因为结果不为0,所以零标志ZF=0。

综上,溢出标志(OF)为0,符号标志(SF)为0,零标志(ZF)为0。

④加法器最高位向前的进位Ca为1。

4)从2)和3)的例子就可得出,带符号整数-68和-80时,C。

为1,而带符号数-68和80时,Cn一样为1,所以若将加法器最高位的进位Ca作为进位标志(CF).无法直接根据CF的值判断两个带符号整数的大小。

六、综合题
37、解析:微指令字长为24位,操作控制字段被分为4组,第1组3位(表示5个微命令).第2组4位,(表示8个微命令),第3组4位(表示14个微命令),第4组2
位(表示3个微命令);判断测试条件字段2位,下地址字段9位。

1)因为下地址字段有9位,所以控制存储器的容量为29×24位。

2)微指令的具体格式如图所示。

38、解析:
1)寄存器R1存储的是134,转换成二进制为10000110B,即86H。

寄存器R5存储的是x-y的内容,x-y=-112,转换成二进制为10010000B,即90H。

寄存器R6存储的是x+y的内容,x+y=380,转换成
二进制为101111100B(前面的进位含弃),即7CH。

由于计算机字长为8位,因此无符号整数能表示
的范围为0~255,而x+y=380,故溢出。

2)m二进制表示为10000110B,由于m是int型,因此最高位为符号位,可以得出m的原码为11111010(对10000110除符号位取反加1),即-122。

同理,n的二进制表示为11110110B,故n的
原码为10001010,转成十进制为-10。

因此,k1=-122-(-10)=-112。

3)参考答案:可以利用同一个加法器及辅助电路实现。

因为无符号整数和有符号整数都是以补码
形式存储,所以运算规则都是一样的。

但有一点需要考虑,由于无符号整数和有符号整数的表示范围是
不一样的,因此需要设置不一样的溢出电路。

4)至于内部如何判断溢出,可参考前面的总结。

带符号整数只有k2会发生溢出。

分析:8位带符
号整数的补码取值范围为-128~+127,而k2-m+n=-122-10--132,超出范围。

而kl=-112,在范围-128~+127之内。

39、解析:
直接寻址:由于直接寻址的有效地址EA为形式地址本身,因此直接寻址的有效地
址为300,根据题目给出的表格可知,地址为300对应的内容为400。

间接寻址:间接寻址中根据形式地址寻找到的内容才是真正的有效地址,即根据存储器的内容300找到的400才是间接寻址的有效地址,故有效地址为400,地址为400对应的内容为700。

相对寻址:相对寻址中形式地址加上PC的内容为有效地址,PC当前值为200,当
取出一条指令后,变为202,故有效地址为202+300-502,地址为502对应的内容为900。

变址寻址:变址寻址的有效地址为形式地址加上变址寄存器的内容,因此有效地址为100+300-400,地址为400对应的内容为700。

基址寻址:基址寻址的有效地址为形式地址加上基址寄存器的内容,因此有效地址为200+300=500,地址为500对应的内容为600。

先变址后间址:先变址,即先是形式地址加上变址寄存器的内容,即400;再间址,意思就是根据地址400找到内容才是有效地址。

因此,先变址后间址的有效地址为700。

地址为700对应的内容为401。

先间址后变址:先间址,即先根据形式地址300找到间址的有效地址400:再变址,即400再加上变址寄存器的内容,也就是400+100=500,地址为500对应的内容
为600。

综上所述,补全后的表如下所示:。

相关文档
最新文档