10计算机组成复习Word格式.docx
- 文档编号:21098953
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:17
- 大小:269.51KB
10计算机组成复习Word格式.docx
《10计算机组成复习Word格式.docx》由会员分享,可在线阅读,更多相关《10计算机组成复习Word格式.docx(17页珍藏版)》请在冰豆网上搜索。
(5)输入输出设备概念;
显示器的种类、技术指标(分辨率、灰度或颜色、频率);
鼠标器原理、触摸屏技术
(6)磁盘存储器指标及应用
(7)汉字输入(码)、存储与交换表示(内码)、输出(字型)方法、标准
五、总线
总线概念;
总线分类;
各类型(USB、PCI等)特点;
总线控制、方式,总线带宽;
串行与并行通信概念、单工、半双工、全双工总线;
六、指令系统
指令系统因具备特性;
指令格式;
指令寻址方式、有效地址;
RISC和CISC的特点;
七、CPU及其内部的控制器单元
CPU内部寄存器;
数据通路;
微指令、微程序、微程序流程图;
微指令的操作控制方式、特点(直接控制、字段直接编码控制、字段间接编码控制);
组合逻辑控制器;
后继微指令的微地址的产生方法
指令流水线概述、影响因素、指标、流水阻塞及其解决办法、多发技术
八、并行处理(仅计算机101)
弗林(Flynn)提出的计算机系统分类方法;
练一练输入输出系统
1.下列选项中,能引起外部中断的事件是
A.键盘输入
B.除数为0
C.浮点运算下溢
D.访存缺页
2.单处理机系统中,可并行的是
I
进程与进程
II
处理机与设备
III
处理机与通道
IV
设备与设备
A.I、II和III
B.
I、II和IV
C.
I、III和IV
D.
II、III和IV
3、单级中断系统中,中断服务程序执行顺序是()
I、保护现场
II、开中断
III、关中断
IV、保存断点
V、中断事件处理
VI、恢复现场
VII、中断返回
A:
I、V、VI、II、VIIB:
III、I、V、VII
C:
III、IV、V、VI、VIID:
IV、I、V、VI、VII
4、假定一台计算机的显示存储器用DRAM芯片实现,若要求显示分辨率为1600*1200,颜色深度为24位,帧频为85Hz,显示总带宽的50%用来刷新屏幕,则需要的显存总带宽至少约为()
A:
245MbpsB:
979MbpsC:
1958MbpsD:
7834Mbps
解:
1600*1200*24*85*2=7834Mbps
5.某计算机有五级中断L4~L0,中断屏蔽字为M4M3M2M1M0,Mi=1(0≤i≤4)表示对Li级中断进行屏蔽。
若中断响应优先级从高到低的顺序是L0→L1→L2→L3→L4,且要求中断处理优先级从高到低的顺序为L4→L0→L2→L1→L3,则L1的中断处理程序中设置的中断屏蔽字是
A.11110B.01101C.00011D.01010
6查询程序运行一次所用的时钟周期数至少为500。
在设备A工作期间,为保证数据不丢失,每秒需对
其查询至少200次,则CPU用于设备A的I/O的时间占整个CPU时间的百分比至少是C
A.0.02%B.0.05%C.0.20%D.0.50%
7、响应外部中断的过程中,中断隐指令完成的操作,除保护断点外,还包括()
I、关中断II、保存通用寄存器内容III、形成中断服务程序入口地址并送PC
A、仅I、IIB、仅I、IIIC、仅II、IIID、I、II、III
8、下列选项中,不可能在用户态发生的事件是()
A、系统调用B、外部中断C、进程切换D、缺页
9、中断处理和子程序调用都需要压栈以保护现场,中断处理一定会保存而子程序调用不需要保存其内容的是()
A、程序计数器B、程序状态字寄存器
C、通用数据寄存器D、通用地址寄存器
10.(8分)某计算机的CPU主频为500MHz,CPI为5(即执行每条指令平均需5个时钟周期)。
假定某外设的数据传输率为0.5MB/s,采用中断方式与主机进行数据传送,以32位为传输单位,对应的中断服务程序包含18条指令,中断服务的其他开销相当于2条指令的执行时间。
请回答下列问题,要求给出计算过程。
(1)在中断方式下,CPU用于该外设I/O的时间占整个CPU时间的百分比是多少?
(2)当该外设的数据传输率达到5MB/s时,改用DMA方式传送数据。
假设每次DMA传送大小为5000B,
且DMA预处理和后处理的总开销为500个时钟周期,则CPU用于该外设I/O的时间占整个CPU时间的百分比是多少?
(假设DMA与CPU之间没有访存冲突)
(1)在中断方式下,每32位(4B)被中断一次,故每秒中断
0.5MB/4B=0.5×
106/4=12.5×
104次
要注意的是,这里是数据传输率,所以1MB=106B。
因为中断服务程序包含18条指令,中断服务的其他开销相当于2条指令的执行时间,且执行每条指令平均需5个时钟周期,所以,1秒内用于中断
的时钟周期数为
(18+2)×
5×
12.5×
104=12.5×
106
(2)在DMA方式下,每秒进行DMA操作
5MB/5000B=5×
106/5000=1×
103
次因为DMA预处理和后处理的总开销为500个时钟周期,所以1秒钟之内用于DMA操作的时钟周期数为
500×
1×
103=5×
105
故在DMA方式下,占整个CPU时间的百分比是
((5×
105)/(500×
106))×
100%=0.1%
练一练指令系统
1.冯·
诺依曼计算机中指令和数据均以二进制形式存放在存储器中,CPU区分它们的依据是C
A.指令操作码的译码结果
B.指令和数据的寻址方式
C.指令周期的不同阶段
D.指令和数据所在的存储单元
2.某机器字长16位,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。
假定取指令时,每取一个字节PC自动加1。
若某转移指令所在主存地址为2000H,相对位移量字段的内容为06H,则该转移指令成功转以后的目标地址是C
A.2006H
B.2007H
C.2008H
D.2009H
3.下列关于RISC的叙述中,错误的是A
A.RISC普遍采用微程序控制器
B.RISC大多数指令在一个时钟周期内完成
C.RISC的内部通用寄存器数量相对CISC多
D.RISC的指令数、寻址方式和指令格式种类相对CISC少
4.偏移寻址通过将某个寄存器内容与一个形式地址相加而生成有效地址。
下列寻址方式中,不属于偏移寻址方式的是A
A.间接寻址B.基址寻址C.相对寻址D.变址寻址
5.下列给出的指令系统特点中,有利于实现指令流水线的是D
I.指令格式规整且长度一致II.指令和数据按边界对齐存放
III.只有Load/Store指令才能对操作数进行存储访问
A.仅I、IIB.仅II、IIIC.仅I、IIID.I、II、III
6.假定不采用Cache和指令预取技术,且机器处于“开中断”状态,则在下列有关指令执行的叙述中,错误的是C
A.每个指令周期中CPU都至少访问内存一次
B.每个指令周期一定大于或等于一个CPU时钟周期
C.空操作指令的指令周期中任何寄存器的内容都不会被改变
D.当前程序在每条指令执行结束时都可能被外部中断打断
7.(11分)某计算机字长为16位,主存地址空间大小为128KB,按字编址,采用字长指令格式,指令名字段定义如下:
转移指令采用相对寻址方式,相对偏移是用补码表示,寻址方式定义如下:
注:
(X)表示有储蓄地址X或寄存器X的内容,请回答下列问题:
(1)该指令系统最多可有多少条指令?
该计算机最多有多少个通用寄存器?
存储器地址寄存器(MDR)至少各需多少位?
(2)转移指令的目标地址范围是多少?
(3)若操作码0010B表示加法操作(助记符为add),寄存器R4和R5的编号分别为100B和101B,R4的内容为1234H,R5的内容为5678H,地址1234H中的内容为5678H中的内容为1234H,则汇编语言为add(R4),(R5)+(逗号前原操作数,都号后为目的操作数)对应的机器码是什么(用十六进制表示)?
该指令执行后,哪些寄存器和存储单元的内容会改变?
改变后的内容是什么?
解答:
该题的考点是指令系统设计,注意操作位数与指令条数的关系,地址码与寄存器数的关系,指令字长与MDR的关系,存储容量与MAR的关系,注意补码计算的偏移地址。
(1)指令操作码占4位,则该指令系统最多可以有24=16条指令。
指令操作数占6位,其中3位指示寻址方式,寄存器编号占3位,所以该计算机最多可以有23=8个通用寄存器。
计算机字长为16位,所以存储器寄存器(MDR)至少为16位。
主存空间128KB,按字(16位)编址,则寻址范围为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内容所指的存储器单元。
即:
R4的内容:
1234H,R4内容所指存储器的单元内容:
5678H;
R5的内容:
5678H,R5内容所指存储器单元内容:
1234H;
目标寄存器R5自加:
5678H+1=5679H
所以执行后,目标寄存器R5目标寄存器内容所指的存储器单元地址5678H的内容1234H将改变为68ACH;
新R5=5679H。
8.(11分)假定在一个8位字长的计算机中运行如下类C程序段:
unsignedintx=134;
unsignedinty=246;
intm=x;
intn=y;
unsignedintz1=x–y;
unsignedintz2=x+y;
intk1=m–n;
intk2=m+n;
若编译器编译时将8个8位寄存器R1~R8分别分配给变量x、y、m、n、z1、z2、k1和k2。
请回答下列问题。
(提示:
带符号整数用补码表示)
(1)执行上述程序段后,寄存器R1、R5和R6的内容分别是什么?
(用十六进制表示)
(2)执行上述程序段后,变量m和k1的值分别是多少?
(用十进制表示)
(3)上述程序段涉及带符号整数加/减、无符号整数加/减运算,这四种运算能否利用同一个加法器及辅助电路实现?
简述理由。
(4)计算机内部如何判断带符号整数加/减运算的结果是否发生溢出?
上述程序段中,哪些带符号整数运算语句的执行结果会发生溢出?
(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,超出范围,
而k1=-112,在范围-128~+127之内。
三种方法可以判断溢出:
双符号位、最高位进位、符号相同操作数的运算后与原码操作数的符号不同则溢出。
练一练存储器系统
1.某计算机主存容量为64KB,其中ROM区为4KB,其余为RAM区,按字节编址。
现要用2K×
8位的ROM芯片和4K×
4位的RAM芯片来设计该存储器,则需要上述规格的ROM芯片数和RAM芯片数分别是
A.1、15
B.2、15
C.1、30
D.2、30
2.某计算机的Cache共有16块,采用2路组相联映射方式(即每组2块)。
每个主存块大小为32字节,按字节编址。
主存129号单元所在主存块应装入到的Cache组号是
A.0
B.2
C.4
D.6
3.假设某计算机的存储系统由Cache和主存组成,某程序执行过程中访存1000次,其中访问Cache缺失(未命中)50次,则Cache的命中率是
A.5%
B.9.5%
C.50%
D.95%
4、假定用若干个2k*4位芯片组成一个8k*8位存储器,则地址0B1FH所在芯片的最小地址是()
0000H
B:
0600H
C:
0700H
D:
0800H
5、下列有关RAM和ROM的叙述中,正确的是()
I、RAM是易失性存储器,ROM是非易失性存储器
II、RAM和ROM都是采用随机存取的方式进行信息访问
III、RAM和ROM都可用作Cache
IV、RAM和ROM都需要进行刷新
仅I和II
仅II和III
仅I,II,III
D:
仅II,III,IV
6.下列各类存储器中,不采用随机存取方式的是
A.EPROMB.CDROMC.DRAMD.SRAM
7.某计算机存储器按字节编址,主存地址空间大小为64MB,现用4M×
8位的RAM芯片组成32MB的主存储器,则存储器地址寄存器MAR的位数至少是
A.22位B.23位C.25位D.26位
8、假设某计算机按字编址,Cache有4个行,Cache和主存之间交换的块为存储?
字。
若Cache的内容初始为空,采用2路组相联映射方式和LRU替换策略。
访问的主存地址依次为0,4,8,2,0,6,8,6,4,8时,命中Cache的次数是()
A、1B、2C、3D、4
9.一个分段存储管理系统中,地址长度为32位,其中段号占8位,则段长最大
A.2的8次方字节
B.2的16次方字节
C.2的24次方字节
D.2的32次方字节
10、下列关于内存(FlashMemory)的叙述中,错误的是
A.信息可读可写,并且读,写速度一样快
B.储存元有MOS管组成,是一种半导体存储器
C.掉电后信息不丢失,是一种非易失性存储器
D.采用随机访问方式,可替代计算机外部存储器
11、下列命令组合情况中,一次访存过程中,不可能发生的是()
TLB未命中,Cache未命中,Page未命中
B:
TLB未命中,Cache命中,Page命中
TLB命中,Cache未命中,Page命中
D:
TLB命中,Cache命中,Page未命中
12.(12分)某计算机的主存地址空间为256MB,按字节编址,指令Cache分离‘均有8个Cache行,每个Cache行的大小为64B,数据Cache采用直接映射方式,现有两个功能相同的程序A和B,其伪代码
如下所示:
假定int类型数据用32位补码表示,程序编译时i,j,sum均分配在寄存器中,数据a按行优先方式存放,其地址为320(十进制数),请回答下列问题,要求说明理由或给出计算过程。
(1)、若不考虑用于cache一致性维护和替换算法的控制位,则数据Cache的总容量是多少?
(2)、数组元素a[0][31]和a[1][1]各自所在的主存块对应的Cache行号分别是多少(Cache行号从0开始)?
(3)、程序A和B的数据访问命令中各是多少?
那个程序的执行时间更短?
简答:
考点:
Cache容量计算,直接映射方式的地址计算,以及命中率计算(行优先遍历与列优先遍历命中率分别很大)
(1)总的寻址位数为:
28位(228=256M)
块内为:
6位(26=64),5~0位
块索引:
3位(23=8),8~6位
所以,TAG=28-6-3=19位,27~9位
每行(块)的大小=V+TAG+数据=1+19+64×
8位。
数据Cache有8行,总容量为(1+19+64×
8)×
8/8=532字节。
(2)由于数组在存储器中,按行优先方式存放,每个数组元素占四个字节。
数组首地址为320,因此可知:
a[0][31]在存储器中的地址为320+31*4=444=000110111100B,a[1][1]在存储器中的地址为320+(256+1)*4=1348=010101000100B按直接映射下,地址分为三部分,块索引在地址的8~6位,所以两地址所对应的块索引分为6(110B)、5(101B)。
数组A[0][31]所在的主存块对应的Cache行号是:
(320+31×
(32/8))div64=6,
数组A[1][1]所在主存块对应的Cache行号:
((320+256×
4+1×
4)div64)mod8=5。
所以a[0][31]所在主存块映射到Cache第6行,
a[1][1]所在主存块映射到Cache第5行。
(3)数组a中每个数据只用了一次,如果程序没有命中,则从主存中读入一块64B,随后的15次便都Cache命中,读一次管16次,所以命中率为((216-212)/216)*100%=93.75%.。
程序B随列访问数组a,由于Cache的容量太小,读入的数据块留不到下次用便又被替换,所以每次都失配,命中率为0。
另一种算法是,由于数组a一行的数据量为1KB>
64B,所以访问第0行,每个元素时都不命中,由于数组有256列,数据Cache仅有8行,故访问数组后续列元素是仍然不命中,于是程序B的数据访问命中率为0.
由于从Cache读数据比从内存读数据快很多,所以程序A的执行过程更短。
练一练数值运算
1.一个C语言程序在一台32位机器上运行。
程序中定义了三个变量xyz,其中x和z是int型,y为short型。
当x=127,y=-9时,执行赋值语句z=x+y后,xyz的值分别是
A.X=0000007FH,y=FFF9H,z=00000076H
A.X=0000007FH,y=FFF9H,z=FFFF0076H
A.X=0000007FH,y=FFF7H,z=FFFF0076H
A.X=0000007FH,y=FFF7H,z=00000076H
2.浮点数加减运算过程一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤。
设浮点数的阶码和尾数均采用补码表示,且位数分别为5位和7位(均含2位符号位)。
若有两个数X=27×
29/32,Y=25×
5/8,则用浮点加法计算X+Y的最终结果是
A.00111
1100010
B.00111
0100010
C.01000
0010001
D.发生溢出
3、假定有4个整数用8位补码分别表示r1=FEH,r2=F2H,r3=90H,r4=F8H,若将运算结果存放在一个8位的寄存器中,则下列运算会发生溢出的是()
r1*r2
B:
r2*r3
r1*r4
r2*r4
4、假定变量i,f,d数据类型分别为int,float,double(int用补码表示,float和double用IEEE754单精度和双精度浮点数据格式表示),已知i=785,f=1.5678e3,d=1.5e100,若在32位机器中执行下列关系表达式,则结果为真的是()
(I)i==(int)(float)i
(II)f==(float)(int)f
(III)f==(float)(double)f
(IV)(d+f)-d==f
A.仅I和IIB.仅I和IIIC.仅II和IIID.仅III和IV
5.float型数据通常用IEEE754单精度浮点数格式表示。
若编译器将float型变量x分配在一个32位浮点寄存器FR1中,且x=-8.25,则FR1的内容是A
A.C1040000HB.C2420000HC.C1840000HD.C1C20000H
6、在C语言中,int型占32位,short型占16位,若有下列语句
UnsignedshortX=65530;
UnsignedintY=X
则执行后,Y的十六进制表示为()
A、00007FFAB、0000FFFAC、FFFF7FFAD、FFFFFFFA
7、float类型(IEEE754单精
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 10 计算机 组成 复习