计算机组成原理习题与答案.docx

上传人:b****6 文档编号:4352158 上传时间:2022-11-30 格式:DOCX 页数:11 大小:21.08KB
下载 相关 举报
计算机组成原理习题与答案.docx_第1页
第1页 / 共11页
计算机组成原理习题与答案.docx_第2页
第2页 / 共11页
计算机组成原理习题与答案.docx_第3页
第3页 / 共11页
计算机组成原理习题与答案.docx_第4页
第4页 / 共11页
计算机组成原理习题与答案.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

计算机组成原理习题与答案.docx

《计算机组成原理习题与答案.docx》由会员分享,可在线阅读,更多相关《计算机组成原理习题与答案.docx(11页珍藏版)》请在冰豆网上搜索。

计算机组成原理习题与答案.docx

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

 

简答题

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后,每个中断源新的屏蔽字如下:

中断源屏蔽字

A1110

B0100

C0110

D1111

2.请写出数据10110100110的海明码,用4位校验位,采用偶校验。

根据海明码的定义有:

D11D10D9D8D7D6D5P4D4D3D2P3D1P2P1

10110100110

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

所以,数据10110100110的海明码为101101000111011

加上下划线为校验位。

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

3.解:

命中率H=3800/(3800+200)=0.95

平均访问时间为Ta=50*0.95+250*(1-0.95)=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个模块板中的任一块。

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

解:

①命中率H=Nc/(Nc+Nm)=5000/(5000+2000)=5000/5200=0.96

②主存慢于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.某磁盘存储器转速为3000rpm,共有4个记录盘面,道密度为5tpm,每道记录信息12288B,最小磁道直径为230mm,共有275道,求:

(1)磁盘存储器的存储容量

(2)最高位密度和最低位密度(3)磁盘数据传输率

(4)平均等待时间

(1)每道记录信息容量=12288B

每个记录面信息容量=12288B*275

4个记录面信息容量=12288B*275*4=13516800B

(2)最高位密度D1按最小磁道半径R1=115mm计算

D1=12288/(2*3.14*115)=17Bpm

最低位密度D2按最大磁道半径R2计算

R2=R1+(275/5)=115+55=170mm

D2=12288/(2*3.14*170)=11.5Bpm

(3)磁盘数据传输率C=Nr

N为每道信息容量12288B

r=3000rpm=50r/s

C=Nr=12288*50=614400Bps

(4)平均等待时间=(1/50)/2=1/100s=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)按照题目的要求,地址信号和地址分配如下:

A19A18A17A16A15---A0

00000---0EPROM1:

00000H—1FFFFH

00011---1

00100---0EPROM2:

20000H—3FFFFH

00111---1

01000---0EPROM3:

40000H—5FFFFH

01011---1

01100---0EPROM3:

60000H—7FFFFH

01111---1

10100---0RAM1:

A0000H—AFFFFH

10101---1

10110---0RAM2:

B0000H—BFFFFH

10111---1

8.CPU内有32个32位的通用寄存器,设计一种能容纳64种操作的指令系统。

假设指令字长等于机器字长,回答下列问题:

(1)如果主存可直接或间接寻址,采用寄存器-存储器型指令,能直接寻址的最大存储董建是多少?

画出指令格式并说出各字段的含义。

(2)在满足

(1)的前提下,如果采用通用寄存器作基址寄存器,则上述寄存器-存储器型指令的指令格式有何特点?

画出指令格式并指出这类指令可访问多大的存储空间?

寄存器是32位,则机器字长为32位,指令字长等于机器字长为32位

(1)指令格式为:

OP6

寄存器号R5

形式地址A21

 

64种操作,则操作码需要6位;32个寄存器,则寄存器号需要5位;剩下21位为形式地址。

直接寻址的最大空间为221=2M字

(2)满足

(1),采用寄存器-存储器型指令,寻址方式用基址寻址方式,则需要加上寄存器号,指令格式为:

OP6

寄存器号1R5

寄存器号2R5

形式地址A16

 

寄存器号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)/2=5.5cm,磁道数为40道/cm*5.5cm=220道

则有220个柱面

(3)内径22cm,周长为3.14*22=69.08cm,内层密度为400位/cm,则一条磁道的容量为69.08*400=27632位=3454B

盘组总存储容量为:

3454*220*12=9MB

(4)数据传输率为每条磁道容量*转速,转速为3600转/分,即60转/秒

3454*60=200KB/S

10.将十进制数-0.625转换为IEEE短浮点数;采用IEEE754单精度浮点数格式表示一个数为45100000H,则该数的值是多少?

(1)-0.625=-0.101=-1.01*2-1

符号位=1

阶码=127-1=126

010*********

结果=BF200000H

(2)符号位1位,阶码8位(用移码表示,移码为127),尾数数值为23位,隐含1位,用原码表示,01000101000100000000000000000000

0,10001010,00100000000000000000000

此数为正数,阶码为138-127=11,尾数为1.001=1.125

数值为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地址分配如下:

A15A14A13A12A11A10---A0

000000---0EPROM1:

0000H-07FFH

000001---1

000010---0EPROM2:

0800H-0FFFH

000011---1

000100---0EPROM3:

1000H-07FFH

000101---1

000110---0EPROM4:

1800H-1FFFH

000111---1

001000---0RAM1:

2000H-07FFH

001001---1

001010---0RAM2:

2800H-2FFFH

001011---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

OP7

寻址特征3

形式地址A6

 

立即数寻址:

指令字长16位,立即数A为6位,没有有效地址,A的范围为-32---+31

OP7

寻址特征3

立即数A6

 

相对寻址:

指令字长16位,形式地址A为6位,EA=(PC)+A,PC为17为,寻址空间为217=128KB

OP7

寻址特征3

形式地址A6

 

基址寻址:

指令长度为32位,寄存器号5位,形式地址A为17位,EA=(R)+EA,寄存器为16位,则EA为17位,寻址空间为217=128KB

OP7

寻址特征3

寄存器号R5

形式地址A17

 

间接寻址:

指令字长16位,形式地址A为6位,EA=(A),存储字长等于机器字长,则(A)为16位,寻址空间为216=64KB

OP7

寻址特征3

形式地址A6

 

变址寻址:

指令长度为32位,寄存器号5位,形式地址A为17位,EA=(R)+EA,寄存器为16位,则EA为17位,寻址空间为217=128KB

OP7

寻址特征3

寄存器号R5

形式地址A17

 

3.某计算机字长32位,有16个通用寄存器,主存容量为1M字,采用单字长二地址指令,共有64条指令,设计四种(寄存器,直接,变址,相对)寻址方式的指令格式,指出每种寻址方式的有效地址计算方法和寻址空间。

3.解:

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

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

寄存器寻址:

指令字长为16位,不需要计算有效地址,不需要访存取操作数

OP6

寻址特征2

寄存器号R14

寄存器R24

 

直接寻址:

指令字长为32位,有效地址EA=A,A为20位,访存空间为220=1M

OP6

寻址特征2

寄存器号R14

形式地址A20

 

变址寻址寻址:

指令字长为32位,字长为32位,寄存器值也为32位,有效地址EA=(变址寄存器)+A,共为32位,可访存空间232=4G

OP6

寻址特征2

寄存器号R14

变址寄存器4

形式地址A16

 

相对寻址

OP6

寻址特征2

形式地址A8

 

寄存器寻址:

指令字长为16位,EA=(PC)+A,主存需地址线为20位,则PC为20位,所以EA也为20为,可访存空间为:

220=1M

4.用16k*1位的DRAM芯片构成64k*8位的存储器,地址范围是0000H--FFFFH,问:

(1)需要多少片,怎么构成,地址怎么分配,画出片选信号;

(2)设存储器读写周期均为0.5us,CPU在1us内至少要访存一次。

可以采取什么刷新方式?

两次刷新的时间间隔是多少?

对全部存储单元刷新一遍,所需实际刷新时间是多少?

4.解:

(1)需要32片。

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

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

16K需要14根,组内地址为A13--A0,每组的地址分配如下:

A15A14A13----A0

000----0DRAM1组:

0000H--3FFFH

001----1

010----0DRAM2组:

4000H--7FFFH

011----1

100----0DRAM3组:

8000H--BFFFH

101----1

110----0DRAM4组:

C000H--FFFFH

111----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时间内正好0.5us刷新,0.5us读写,两次刷新间隔为1us,1024行都刷新完需要1024us,即1.024ms。

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

异步刷新:

2ms内要刷新1024行,则平均1.95us要刷新一行,两次刷新间隔为1.95us,所有行都刷新完需要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)513mod512=1,即第1号块,组号为512/512=1.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1