计算机组成原理习题及答案

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

简答题
1.什么是存储程序原理?按此原理,电脑应具有哪几大功能?
1.答:存储程序原理是用户事先编号的程序先存入主存中,然后CPU在从主存中取出指令、运行指令。

按此原理,电脑应具有输入输出设备,即能把程序和数据通过输入输出设备送入主存中;还应具有存储设备,即内存能存储程序和数据;最后应具有控制器和运算器,即CPU能从主存中取出程序和数据,并按顺序一条一条取出、执行。

2.存储器与CPU连接时,应考虑哪些问题?
2.答:应考虑〔1〕合理选择存储芯片,要考虑芯片的类型和数量尽量使连线简单方便;〔2〕地址线的连接,将CPU地址线的低位与存储芯片的地址线相连,以选择芯片中的某一单元,儿高位则在扩充存储芯片时用,用来选择存储芯片;〔3〕数据线的连接,CPU的数据线与存储芯片的数据线不一定相等,相等时可直接连接,不相等时要对存储芯片进行扩位,使其相等连接;〔4〕读/写控制线的连接,高电平为读,低电平为写;〔5〕片选线的连接,CPU的高位地址来产生片选信号。

3.什么叫地址重叠区,什么情况下会产生地址重叠区?
3.答:存储系统中的某些存储单元有多个地址,这种现象叫地址重叠区。

原因是,存储系统是由多个芯片组成的,在产生片选信号时,如果只用部分高位地址来产生片选信号,则有一部分高位地址线没用,这样这部分地址线的值就不确定,可以为0也可以为1,所以存储芯片的地址空间也不确定了,出现了重复值,产生了地址重叠区。

4.什么叫“对准字”和“未对准字”,CPU对二者的访问有何不同?
4.答:CPU访问的数据类型有字节,半字,字和双字。

假设字长为32位,则字节8位,半字16位,字32位,双字64位。

对准字就是存储这四种数据类型时,字节的起始地址任意,半字的起始地址为2的倍数,字的起始地址为4的倍数,双字的起始地址为8的倍数。

未对准字就是四种数据类型在存储时都任意,无论从哪个存储单元开始都可以。

CPU访问对准字只要一个存储周期就行了,因为对准字都在同一行,能同时选中;访问未对准字需要多个存取周期,引文他们对应的存储单元可能不在同一行。

5.中断周期的前和后各是CPU的什么工作周期,如何工作?
5.答:中断周期的前一周期是指令的执行周期,CPU根据指令的操作码,发出不同的操作指令完成指令的执行;中断周期的后一周期是取指周期,因为中断周期是指令周期的最后一个周期,假设执行周期结束,有中断请求且符合中断执行的条件则进入中断周期,当中断周期结束时,就进入的下一条指令的取指周期,取指周期主要是根据程序计数器的值,从主存中把要执行的指令取到cpu中来分析、执行。

6.为什么要设置总线标准,你知道目前流行的总线标准有哪些?
6.答:总线标准可视为系统与各模块、模块与模块之间的一个互连的标准界面。

如果没有总线标准,各个设备之间如果要传送数据,就必须相互了解特征、属性,电脑系统内有多种设备,每个设备的特征都各不想通过,相互之间传送数据都要有独立的数据线,这样数据线就很复杂,且设备的接口多。

使用了总线标准,每个设备就只有一个接口接向总线,而不需要了解其他设备的接口特点。

目前流行的总线标准有:EISA\PCI\USB\AGP\RS232等等。

计算器
1.设某机有4个中断源A、B、C、D,其硬件排队优先次序为A>B>C>D,现要求将中断处理次序改为D>A>C>B。

〔1〕写出每个中断源对应的屏蔽字
〔2〕按图时间轴给出的四个中断源的请求时刻,画出CPU执行程序的轨迹。

设每个中断源
的中断服务程序时间均为20us。

1.答:〔1〕在中断处理次序改为D>A>C>B后,每个中断源新的屏蔽字如下:中断源屏蔽字
A 1 1 1 0
B 0 1 0 0
C 0 1 1 0
D 1 1 1 1
2.请写出数据的海明码,用4位校验位,采用偶校验。

根据海明码的定义有:
D11 D10 D9 D8 D7 D6 D5 P4 D4 D3 D2 P3 D1 P2 P1
1 0 1 1 0 1 0 0 1 1 0
P1=D1⊕D2⊕D4⊕D5⊕D7⊕D9⊕D11
=0⊕1⊕0⊕0⊕0⊕1⊕1=1
P2=D1⊕D3VD4⊕D6⊕D7⊕D10⊕D11
=0⊕1⊕0⊕1⊕0⊕0⊕1=1
P3=D2⊕D3⊕D4⊕D8⊕D9⊕D10⊕D11
=1⊕1⊕0⊕1⊕1⊕0⊕1=1
P4=D5⊕D6⊕D7⊕D8⊕D9⊕D10⊕D11
=0⊕1⊕0⊕1⊕1⊕0⊕1=0
所以,数据的海明码为1 0 1 1 0 1 0 0 0 1 1 1 0 1 1
加上下划线为校验位。

执行一段程序时,Cache完成存取次数为3800次,主存完成存取的次数为200次,已知Cache 存取周期为50ns,主存为250ns,求Cache/主存系统的效率和平均访问时间。

3.解:命中率
平均访问时间为Ta=50*0.95+250*〔〕=60ns
效率e=50/60*100%=83.33%
4.已知某8位机的主存采用半导体存储器,地址码为18位,假设使用4K*4位RAM芯片组成该机所允许的最大主存空间,并选用模块条的形式,问:
〔1〕假设每个模块条为32k*8位,共需几个模块条〔2〕每个模块内共有多少片RAM芯片〔3〕主存共需多少RAM芯片?CPU如何选择各模块条?
4.地址线为18位的8位机主存容量为218*8=256KB
(1)共需8个模块板
(2)每个模块板内有16片RAM芯片
(3)主存共需128片RAM芯片,18根地址线分配如下:
A11---A0作为4K*4位芯片本身的地址线;
A14---A12作为模块板内片选地址,采用74LS138译码器,共8个输出,每个输出选择2片4K*4位的RAM芯片;
A17---A15作为模块板的地址,用74LS138译码器,每个输出选8个模块板中的任一块。

执行一段程序时,Cache完成存取次数为5000次,主存完成存取的次数为200次,已知Cache 存取周期为40,主存为160,求命中率,Cache/主存系统的效率和平均访问时间。

解:①命中率H=Nc/〔Nc+Nm〕=5000/〔5000+2000〕
②主存慢于cache的倍率R=Tm/Tc=160ns/40ns=4
访问效率:
e=1/[r+〔1-r〕H]=1/[4+〔1-4〕×0.96]
=89.3℅//:2分
③平均访问时间Ta=Tc/e=40/0.893=45ns
6.某磁盘存储器转速为3000 rpm,共有4个记录盘面,道密度为5 tpm,每道记录信息12288 B,最小磁道直径为230 mm,共有275道,求:
〔1〕磁盘存储器的存储容量〔2〕最高位密度和最低位密度〔3〕磁盘数据传输率
〔4〕平均等待时间
〔1〕每道记录信息容量=12288B
每个记录面信息容量=12288B*275
4个记录面信息容量=12288B*275*4=13516800B
〔2〕最高位密度D1按最小磁道半径R1=115mm计算
D1=12288/(2*3.14*115)=17 Bpm
最低位密度D2按最大磁道半径R2计算
R2=R1+(275/5)=115+55=170mm
D2=12288/(2*3.14*170)=11.5 Bpm
〔3〕磁盘数据传输率C=Nr
N为每道信息容量12288B
r=3000 rpm=50r/s
C=Nr=12288*50=614400Bps
〔4〕平均等待时间=(1/50)/2=1/100 s=10ms
7.要求用128Kⅹ16的SRAM芯片组成512Kⅹ16随机存储器,用64Kⅹ16的EPROM芯片组成128Kⅹ16的只读存储器。

试问:
〔1〕数据寄存器多少位?〔2〕地址寄存器多少位?〔3〕两种芯片各需多少片?
〔4〕假设EPROM的地址从00000H开始,RAM的地址从A0000H开始,写出各芯片的地址分配情况
〔1〕芯片都是*16的,数据寄存器的位数为16位
〔2〕存储器的总容量为512K+128K=640K,则需要220=1024K的地址才能把所有存储单元都能寻址。

地址寄存器是20位;
〔3〕128k*16组成512k*16,需要4片,64k*16组成128k*16,需要2片
〔4〕按照题目的要求,地址信号和地址分配如下:
A19 A18 A17 A16 A15---A0
0 0 0 0 0---0 EPROM1:00000H—1FFFFH
0 0 0 1 1---1
0 0 1 0 0---0 EPROM2:20000H—3FFFFH
0 0 1 1 1---1
0 1 0 0 0---0 EPROM3:40000H—5FFFFH
0 1 0 1 1---1
0 1 1 0 0---0 EPROM3:60000H—7FFFFH
0 1 1 1 1---1
1 0 1 0 0---0 RAM1:A0000H—AFFFFH
1 0 1 0 1---1
1 0 1 1 0---0 RAM2:B0000H—BFFFFH
1 0 1 1 1---1
8.CPU内有32个32位的通用寄存器,设计一种能容纳64种操作的指令系统。

假设指令字长等于机器字长,答复以下问题:
〔1〕如果主存可直接或间接寻址,采用寄存器-存储器型指令,能直接寻址的最大存储董建
是多少?画出指令格式并说出各字段的含义。

〔2〕在满足〔1〕的前提下,如果采用通用寄存器作基址寄存器,则上述寄存器-存储器型指令的指令格式有何特点?画出指令格式并指出这类指令可访问多大的存储空间?
寄存器是32位,则机器字长为32位,指令字长等于机器字长为32位
〔1〕指令格式为:
OP 6
寄存器号R 5
形式地址A 21
64种操作,则操作码需要6位;32个寄存器,则寄存器号需要5位;剩下21位为形式地址。

直接寻址的最大空间为221=2M字
〔2〕满足〔1〕,采用寄存器-存储器型指令,寻址方式用基址寻址方式,则需要加上寄存器号,指令格式为:
OP 6
寄存器号1R 5
寄存器号2R 5
形式地址A 16
寄存器号1为第一操作数;寄存器号2和形式地址构成第二操作数,用的是基址寻址方式,寄存器为32位,按照基址寻址方式EA=(R)+A,则EA为32位,所以寻址空间为232=4G字9.磁盘组有6片磁盘,最外两侧盘片可以记录,存储区域内径22cm,外径33cm,道密度为40道/cm,内层密度为400位/cm,转速为3600转/分。

〔1〕共有多少存储面可用?〔2〕共有多少柱面
〔3〕盘组总存储容量是多少〔4〕数据传输率是多少?
〔1〕6片,最外两侧可以记录,则有12个存储面可用
〔2〕柱面即磁道面,〔33-22〕,磁道数为40道/cm*5.5cm=220道
则有220个柱面
〔3〕内径22cm,周长为,内层密度为400位/cm,则一条磁道的容量为69.08*400=27632位=3454B
盘组总存储容量为:3454*220*12=9MB
〔4〕数据传输率为每条磁道容量*转速,转速为3600转/分,即60转/秒
3454*60=200KB/S
10.将十进制数转换为IEEE短浮点数;采用IEEE754单精度浮点数格式表示一个数为45100000H,则该数的值是多少?
〔1〕-0.625=-0.101=-1.01*2-1
符号位=1
阶码=127-1=126
结果=BF200000H
(2)符号位1位,阶码8位〔用移码表示,移码为127〕,尾数数值为23位,隐含1位,用原码表示,0100 0101 0001 0000 0000 0000 0000 0000
0,10001010,
此数为正数,阶码为138-127=11,尾数为
数值为1.001*211=1001*28=9*256=2304
应用题
1.为某8位微机〔地址总线为16位〕设计一个12KB容量的存储器,要求EPROM区为8KB,从0000H开始,采用2716芯片〔2K*8〕;RAM区为4KB,从2000H开始采用6116芯片〔2K*8〕。

求:〔1〕对各芯片的地址分配;〔2〕指出各芯片的片内选择地址线和芯片选择地址线;〔3〕采用74LS138译码器,画出片选地址译码电路。

1.解:〔1〕EPROM需要4片,从0000H开始;RAM需要2片从2000H开始,芯片都是2K*8的,则片内地址需要11根,从A0---A10地址分配如下:
A15 A14 A13 A12 A11 A10---A0
0 0 0 0 0 0---0 EPROM1:0000H-07FFH
0 0 0 0 0 1---1
0 0 0 0 1 0---0 EPROM2:0800H-0FFFH
0 0 0 0 1 1---1
0 0 0 1 0 0---0 EPROM3:1000H-07FFH
0 0 0 1 0 1---1
0 0 0 1 1 0---0 EPROM4:1800H-1FFFH
0 0 0 1 1 1---1
0 0 1 0 0 0---0 RAM1:2000H-07FFH
0 0 1 0 0 1---1
0 0 1 0 1 0---0 RAM2:2800H-2FFFH
0 0 1 0 1 1---1
〔2〕用低位地址作为芯片的片内选择地址线,6个芯片都是2K*8的,片内地址需要11根,则从A0---A10,6个芯片需要3位地址才能实现片选,使用A11---A13.
〔3〕用74LS138译码器,A11--A13接CBA,/Y0---/Y5即可作为6个芯片的片选信号,电路图如下:
2.假设机器字长为16位,CPU内有32个通用寄存器,主存容量为128KB,且存储字长等于机器字长;指令长度为16位或32位,共有128条指令,设计指令格式,要求有直接、立即数、相对、基址、间接、变址六种寻址方式,画出指令格式,写出有效地址的计算方法、寻址空间、立即数的范围
2.解:128条指令,需要操作码7位;主存容量为128KB,假设能把所有主存空间都访问完需要17位地址线;机器字长为16位,则寄存器的位数也为16位,32个通用寄存器,寄存器号需要5位;六种寻址方式,需要寻址特征位3位,指令格式如下:
直接寻址:指令字长16位,形式地址A为6位,EA=A,寻址空间为26=64B
OP 7
寻址特征3
形式地址A 6
立即数寻址:指令字长16位,立即数A为6位,没有有效地址,A的范围为-32---+31
OP 7
寻址特征3
立即数A 6
相对寻址:指令字长16位,形式地址A为6位,EA=(PC)+A,PC为17为,寻址空间为217=128KB OP 7
寻址特征3
形式地址A 6
基址寻址:指令长度为32位,寄存器号5位,形式地址A为17位,EA=(R)+EA,寄存器为16位,则EA为17位,寻址空间为217=128KB
OP 7
寻址特征3
寄存器号R 5
形式地址A 17
间接寻址:指令字长16位,形式地址A为6位,EA=〔A),存储字长等于机器字长,则〔A〕为16位,寻址空间为216=64KB
OP 7
寻址特征3
形式地址A 6
变址寻址:指令长度为32位,寄存器号5位,形式地址A为17位,EA=(R)+EA,寄存器为16位,则EA为17位,寻址空间为217=128KB
OP 7
寻址特征3
寄存器号R 5
形式地址A 17
3.某电脑字长32位,有16个通用寄存器,主存容量为1M字,采用单字长二地址指令,共有64条指令,设计四种〔寄存器,直接,变址,相对〕寻址方式的指令格式,指出每种寻址方式的有效地址计算方法和寻址空间。

3.解:字长为32位,采用单字长指令,则指令长度为32位,16个通用寄存器,需要寄存器号为4位,主存容量为1M字,假设要访问到主存的任意空间,则有效地址位数为20位。

4种寻址方式,寻址特征需要2位,64条指令,操作码需要6位。

寄存器寻址:指令字长为16位,不需要计算有效地址,不需要访存取操作数
OP 6
寻址特征2
寄存器号R1 4
寄存器R2 4
直接寻址:指令字长为32位,有效地址EA=A,A为20位,访存空间为220=1M
OP 6
寻址特征2
寄存器号R1 4
形式地址A 20
变址寻址寻址:指令字长为32位,字长为32位,寄存器值也为32位,有效地址EA=(变址寄存器〕+A,共为32位,可访存空间232=4G
OP 6
寻址特征2
寄存器号R1 4
变址寄存器4
形式地址A 16
相对寻址
OP 6
寻址特征2
形式地址A 8
寄存器寻址:指令字长为16位,EA=〔PC〕+A,主存需地址线为20位,则PC为20位,所以EA也为20为,可访存空间为:220=1M
4.用16k*1位的DRAM芯片构成64k*8位的存储器,地址范围是0000H--FFFFH,问:
〔1〕需要多少片,怎么构成,地址怎么分配,画出片选信号;
〔2〕设存储器读写周期均为,CPU在1us内至少要访存一次。

可以采取什么刷新方式?两次刷新的时间间隔是多少?对全部存储单元刷新一遍,所需实际刷新时间是多少?
4.解:〔1〕需要32片。

先用16k*1位的用位扩展成16k*8位的,8片组成一组,这一组除了数据线不同之外,其余线的接法完全相同。

再用16k*8位的4组用扩展成64K*8位,这四组,用高位地址线形成片选线,其余线的接法完全相同。

16K需要14根,组内地址为A13--A0,每组的地址分配如下:
A15 A14 A13----A0
0 0 0----0 DRAM1组:0000H--3FFFH
0 0 1----1
0 1 0----0 DRAM2组:4000H--7FFFH
0 1 1----1
1 0 0----0 DRAM3组:8000H--BFFFH
1 0 1----1
1 1 0----0 DRAM4组:C000H--FFFFH
1 1 1----1
用访存控制信号,M=1,A15,A14作为74ls138译码器的CBA输入端,/Y4选择DARM1组,/Y5选择DRAM2组,/Y6选择DRAM3组,/Y7选择DRAM4组,片选产生电路图如下:
〔2〕64k*8位,216*23位=219位,可写成210*29行列形式,刷新是以行为单位的,即要刷新所有存储单元即要刷新1024行。

CPU在1us内至少要访存一次,不能采用集中刷新方式,可以采取分散刷新和异步刷新方式.
分散刷新:刷一行,读写一次,1us时间内正好刷新,读写,两次刷新间隔为1us,1024行都刷新完需要1024us,即。

2ms的其余时间为正常读写。

异步刷新:2ms内要刷新1024行,则平均要刷新一行,两次刷新间隔为,所有行都刷新完需要2ms。

5.某机存储器容量为64K*16位,该机访存指令格如下
其中M为寻址模式:0为直接寻址,1为基址寻址,2为相对寻址,3为立即寻址;I为
间址特征(I=1间址);X为变址特征〔X=1变址〕,设PC为程序计数器,RX为变址寄存器,RB为基址寄存器,问〔1〕该指令能定义多少种操作?〔2〕立即寻址操作数的范围?〔3〕写出每种寻址方式计算有效地址的表达式
〔4〕设基址寄存器为14位,在非变址直接基址寻址时,指令的寻址范围是多少?
〔5〕间接寻址时,寻址范围是多少?假设允许多重寻址,寻址范围又是多少?
5.解:〔1〕该指令能定义16种操作
〔2〕立即寻址操作数的范围是-128—+127
〔3〕直接寻址EA=A基址寻址EA=(RB)+A
变址寻址EA=(RX)+A相对寻址EA=(PC)+A
间接寻址EA=((A))
〔4〕非变址直接基址寻址时EA=〔RB〕+A,RB为14位,故可寻址范围为214.
〔5〕间接寻址时,如不考虑多次间址,寻址范围为64K。

如果考虑多次间址,则需要最高1位作为多次间址标志,此时寻址范围为32K。

6.设cache的容量为8KB,主存的容量为512KB,每块有16B,请答复:
〔1〕采用直接映射方式,画出主存和cache的地址分配?
〔2〕cache采用4路组相联映射,画出主存和cache的地址分配?
〔3〕直接映射方式下,将主存的第513块调入cache,则cache的块号为什么?组号是什么?假设送出的主存地址为04011H时是否命中?
6.〔1〕cache为8KB/16B=512,则cache地址分配为
主存为512KB/16B=32K,则主存的地址分配为
cache采用4路组相联,则地址分配为
(3)513mod 512=1,即第1号块,组号为512/512=1.。

相关文档
最新文档