计算机系统结构 CA部分习题参考答案2006.docx

上传人:李司机 文档编号:7135253 上传时间:2024-06-15 格式:DOCX 页数:17 大小:171.54KB
返回 下载 相关 举报
计算机系统结构 CA部分习题参考答案2006.docx_第1页
第1页 / 共17页
计算机系统结构 CA部分习题参考答案2006.docx_第2页
第2页 / 共17页
计算机系统结构 CA部分习题参考答案2006.docx_第3页
第3页 / 共17页
计算机系统结构 CA部分习题参考答案2006.docx_第4页
第4页 / 共17页
计算机系统结构 CA部分习题参考答案2006.docx_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《计算机系统结构 CA部分习题参考答案2006.docx》由会员分享,可在线阅读,更多相关《计算机系统结构 CA部分习题参考答案2006.docx(17页珍藏版)》请在三一办公上搜索。

1、计算机系统结构前四章习题参考答案第二章习题:教材pp91-93:第2、6、9、12、15、20题笫2题:数据结构和数据表示是软件和硬件之间的交界面。数据表示是数据结构的组成元素,数据结构要通过软件映像变换成机器所具有的各种数据表示来实现。不同的数据表示可为数据结构的实现提供不同的支持,但在实现效率和方便性上有所不同。确定和引入数据表示的基本原则是:1)系统效率有无提高?包括实现的时间(主要看主存和处理机之间传送的信息量)和存储空间有无减少;2)引入这种数据表示的通用性和利用率如何。第6题:阶码6位,即阶码部分除去阶符外剩下的阶码值部分p=6位;尾数48位,即尾数的二进制位位数m=48位。当尾数

2、基值为R时,尾数每一个灯进制数位需用1。段门个二进位表示。尾数基值为rn的尾数位数m,=mlog2rjo对于rgl为2、8、16时,11f分别为48、16、12位。本题的计算结果如下表所示:非负阶、正尾数、规格化尾基,.=6位,m=48位)2(m,=48)8(m,=16)16(m,=12)最小阶值0000最大阶值2,一1636363阶的个数2,646464尾数最小值端1/21/81/16尾数最大值I-Tl-2-*1-8,1-1612最小值匚I1/21/81/16最大值/7(l-r.-)2”(1-28u(l-8,)16*3(1-16,2)数的总个数2,Yw2m72s,152so第9题:变址寻址适

3、合在标量计算机中,通过循环程序修改变址值来对向量或数组等数据结构中的元素进行访问和处理。基址寻址主要用于程序的逻辑地址空间到物理地址空间进行变换场合,以支持动态重定位技术的使用。第二问中陞含着指令中为寻找该操作数的地址码只有六位,用来表示这64个地址中的某一个。设计方法一:采用隐含寻址。程序执行过程中,每当要访问存储器时,可以经硬件加法器将陞含寄存器的基址值与指令中给出的6位相对位移量相加来形成其访问单元的物理地址。设计方法二:基点地址采用程序计数器PC,通过无条件转移指令来修改PC的内容,实现在一个大的地址空间中的访问(PC自相对寻址)。即:通过将PC的内容和指令中所提供的6位相对位移量相加

4、来形成主存单元的物理地址。第12:分析:等长操作码的意思是不管其指令的频度如何,都用同样长度的二进制码位数来对指令操作码编码。当指令条数为n时,等长操作码的二进制码位数应当是1OgHUffnIan编码是用HUffInan算法构造出HUffnIan树来得到的,它的平均码长可用WPi4计算出来。i=只有两种码长的扩展操作码编码,需要对指令使用频度进行大小分类。高频的指令放在同一类中,对其用短的操作码编码;低频指令放在另一类中,用长操作码编码。每一类都用等长操作码编码。另外,为了能唯一解码和立即解码,在短操作码中要使用某些码作为扩展成长操作码的扩展标志码。使平均码长尽可能短,来定好长,短码的码长组配

5、关系。从而,再用来*=1求得平均码长。解答:14条指令的等长操作码的平均码长是logzM,即4位。HUffInan编码可先用HUffman算法构造出HUffman树。本题HUffman树如下图所示。(砸)(634-2。因为正处理1级的中断处理程序时,现行程序状态字中的中断级屏蔽位为OoO0,在其执行期间,任何新的同级和低级的中断请求都不可能进入中断响应排队起进行排队,所以,1级中断处理程序一定会先处理完。当执行3级中断服务程序时,由于现行程序状态字中的中断级屏蔽位为1000,即对1级中断请求是“开放”的,而对其它各级中断请求则处于“屏蔽”状态,所以,只要此时发生1级中断请求,它就能进入中断响应

6、排队器去排队。从而在中断请求排队的微操作发出时,就可打断3级中断服务程序的执行,交换程序状态字,转去执行1级中断处理程序,使之被优先处理完。而在执行3级中断服务程序时,由于现行程序状态字对2,3,4级的中断请求处于被“屏蔽”的状态,所以,它们都不能打断正在执行的3级中断处理程序。其他情况可依次类推。(1)当中断响应优先次序为:1-2-3-4时,中断处理的次序为:l-3-4-2o(2)由题目所给出的条件,其CPU运行程序的过程示意图如下图所示。图中,粗短线部分代表进行交换程序状态字的时间,为1个单位时间。中断处理程序中断请求用户程序1234第5题:中断级屏蔽位“1”对应于屏蔽,“0”对应于开放。

7、正在处理某级中断服务程序时,与其同级的新的中断请求是不能被响应的,应当予以屏蔽,因为用样优先级,则先来的应该先得到响应并被处理。根据所要求的中断处理的次序,各级中断处理程序现行状态字中各中断屏蔽位的状态很容易被设置出来。(1)各级中断处理程序中的中断级屏蔽位的设置,如下表所示。中断处理程序级别中断级屏蔽位12345111111201100300100401111501101(2)由已知条件可得程序运行过程示意图如下图所示。图中,粗短线表示交换程序状态字的时间。中断处理程序中断请求用户程序j_2_2_1.2.笫8题:(1)字节多路通道选择好一台设备后,设备与通道只传送一个字节就释放总线。某台设备

8、要想传送n个字节,需要经n次申请使用通道总线才行。数组多路通道选择好一台设备后,连续传送完固定K个字节的成组数据后,才释放总线,通道再选择下一台设备继续传送K个字节。选择通道每选择一台设备,就让其独占通道,直到它把数据传送完毕,因此,每台设备只需申请一次就可传送任意多字节。(2)根据第一个问题,挂低速设备的通道应该按字节多路通道方式工作。字节多路通道的通道极限流量是:max,=l(s+Td)各设备启动后,若想不丢失设备信息,通道极限流量应大于等于设备对通道要求的流量,即应满足:fma,byle=fbyle在字节多路通道上,设备对通道要求的流量应是所挂全部设备的速率之和。若所挂设备台数为m,设备

9、速度fi实际就是设备发出字节传送请求的间隔时间的倒数,m台相同速率的设备其速率之和为m*fi,这样,为不丢失信息,应满足:1/(4+)=m*/.于是可求得在字节多路通道上能挂的设备台数In应满足:m=渭max*力从而可确定哪些设备能挂,哪些不能。选择通道在宏观上要不丢失设备信息,就要限制在通道上所挂设备的速率不能超过一个限值。在字节多路通道方式工作时,限制所挂设备的台数为:m=1B(9.8usn+0.2us),其中n=1024个字节。所以限制通道上所挂的设备速率力=(le-T2Tai)/(l-2)将北尸IO7s*72=102s和e=80%代入上式,可得:H=(le-TA2/TAi)/(l-2)

10、=0.999999975实际上,这样的命中率极难达到,为此需要减少相邻两级的访问速度差距,或减少相邻两级存储器的容量差。除此之外,可考虑在主存和辅存之间增加一级存储器,让其速度界于主存和辅存之间的某个值。如:让主存与中间级的访问时间比为1:100,中间级与辅存间的访问时间比为1:1000,将它们配置上相应的辅助软,硬件,组成一个三级存储层次。这样,可让第1级主存的命中率降低。第8题:要找出方生页面失效的全部虚页号,关键是搞清页表法进行地址映象所用的虚页表的构成。虚页表是记录程序虚页是否装入内存,已经如果已装入主存时,是装在主存的哪个实存页面位置的一个表。表的行数为虚页的页数,用相对于表首偏移的

11、行号来代表程序虚页的页数,即第1行对应于虚页O的装入情况,第2行对应于虚页是否已装入主存。要由虚地址计算出主存的实地址,首先应据题意将虚,实地址中各个自动及其位数确定。虚地址字段为:虚页号页内偏移3位10位由虚拟存储器共有8个页面,每个页面大小为1024个字,可知,虚页号字段为3位二进制位,页内位移字段为10为二进制位。由于虚,实页面大小是一样的,实际主存为4096个字,因此,实地址中,实页号字段为2位,页内位移字段为10位,即实际地址字段为:实页号页内偏移2位10位这样,由题中所给虚地址,就可用下列公式计算出虚页页号和页内位移量。虚页页号为:虚地址/页面大小页内偏移为:虚地址一虚页号*页面大

12、小根据所求得的虚页号来查页表。如果装入位为“0”,为页失效,不可能变换出主存实地址,这是因为装入位为“0”时,封锁了页表中实页号字段内容的取出。只有装入位为“1”时,才能将页表中的实页号字段内容取出,去拼接上虚存地址中的页内位移量,得到相应的主存实地址。主存实地址为:实页号*页面大小+页面位移量(1) 发生页面失效的全部虚页号就是页映象表中所有装入位为“0”的行所对应的虚页号的集合。本题为2,3,5,7o(2) 由虚地址计算主存实地址的情况见下表:虚地址虚页号页内位移装入位实页号页内位移实地址0001303072372836560页面失效无102301023131023409510241011

13、010242055270页面失效无780076320页面失效无40964012020436800665610656656笫9题:段页式虚拟存储器是把实存机械等分成相同大小的页。程序按模块分成段,每个段又分成与主存页面大小相同的页。由此可知,总虚页数为段数*每段页数由题意,我们知道程序的虚地址和主存实地址中各字段的位数对应为:程序虚地址:段号页号页内位移2位主存实地址:2位11位页号页内位移4位11位程序通过一个段表和相应的一组页表来进行定位。如果某段的页表未装入主存,访问该段时,会引起段失效故障,请求到辅存中去将页表调入主存。自然就不能计算出主存实地址。对本题,如:访问到程序第2段时,由于页表

14、不在主存内,就会发生段失效故障。每一个段有有一个页表,页表中各行对应记录此段各虚页是否已装入主存。若未装入主存,访问该虚页时会发生页面失效。若已装入主存,则记录有该程序的虚页装入定位于主存中的实页号。对本题,如:访问程序第。段第2页时,由于是“在辅存上”,会发生页面失效故障,需要去辅存中将该程序虚页调入主存。有关访问方式保护是为了对所存放的指令,数据等进行访问方式的管理。如果程序的访问方式不符合段映象对应规定的访问方式要求,系统会加以拒绝,以保护信息。这样才能保证程序运行安全可靠。本题给出的访问方式有“取数”,“存数”,“转移至此”等。不同方式对存储单元的操作不同。据此,可确定程序对哪些存储单

15、元访问时,因方式不当而发生保护失效。在既无段失效,又无页面失效的情况下,只需要将页表中所记录的实页号取出来,再拼接上程序虚地址的页内位移量,即可求得主存的实地址。此时,主存实地址为:实页号*页面大小+页内位移量(1) 虚地址空间有2位段号,即共有4个段;有2位页号,即每个段有4个页。所以程序最多可有4*4=16个虚页。(2) 发生段失效,页面失效,保护失效及相应主存实地址情况见下表:表中实地址=实页号*+页内位移方式段页页内位移段失效页失效实页号实地址保护失效取数011无无36145无取数1110无无010无取数332047无有无无/存数014无无36148有存数212有/无无/存数1014无

16、有无无/转移13100无无816484无取数0250无有无无/取数205有/无无/转移3060无无1428732有第14题:本题首先应由虚存地址流中的每个虚地址按页面大小,确定出它们各自所在的虚页号。根据虚页号=虚地址/页面大小计算得到访问过程中的虚页地址流后,就可用FlFo替换算法对虚页访问,画出各页实际装入主存和进行页面替换的过程图。从而可以求出相应的命中率。已知主存容量,根据所用的页面大小,可以用:实存页面数=主存容量/页面大小求得相应的实存页面数(1)页面大小为200字,主存容量为400字,可知实存页数为2页。其虚页地址流为:0,0,1,1,0,3,1,2,2,4,4,3下图给出了采用

17、FIFO替换算法时实际装入和替换过程。其中,“*”标记的是候选的虚页页号,H表示命中。2022208214146618370490492868916728001103122443虚地址虚页地址n=2由图计算可得主存的命中率H=612=0.5(2)页面大小为100字,主存容量为400字,可知,实存页面数为4页。其虚页地址流为:0,0,2,2,1,6,3,4,4,8,9,7可据此画出页面装入和替换的全过程,进而得出主存的命中率为:H=312=0.25(3)页面大小为400字,主存容量为400字,可知,实存页面数为1页,虚地址流为:0,0,0,0,0,1,0,1,1,2,2,1虚地址20222082

18、14146618370490492868916728虚页地址O0000022HHHHHH主存命中率为:H=612=0.5(4)由上面结果可知,再分配给程序的实存容量一定(400字)的条件下,页面大小过小时,命中率较低;页面大小增大后,两个地址在同页内的机会增大,使命中率有所上升;由于指令之间因远距离的跳转引起命中率下降的因素不起主要作用,还未出现随页面大小增大,而使命中率下降的情况。如果页地址流有大量的远距离转移,随页面大小增大,因在主存中的页面数过少,而导致出现虚存页面被轮流替换出去的“颠簸”现象时,命中率反而会下降。(5)页面大小为200字,主存容量为800字,可知实存为4页,虚页地址流为

19、:0,0,1,1,0,3,1,2,2,4,4,3下图给出用FIFO替换算法进行页面的装入和替换的过程。虚地址2022208214146618370490492868916728虚页地址Ool1031224430000000,0*044411111111*11333333322222HHHHHHH由该图可得主存的命中率为11=7/12可以看出,分配给程序的实存容量增大后,命中率将会有所上升。不过,命中率的提高已不显著。如果再增大容量,可推断出命中率的上升会渐趋平缓。第18题:首先应根据题意,求得主存和CaChe地址中各字段之位数。CaChe4块,组内2块,所以组数为2组,即组号可有。或1之分。组

20、内块号S为1位。主存8块,Cache4块,所以区号nd为1位。由于组相联采用的映象规则是组间直接,组内相联,所以由主存块地址号,先要判断其是在哪一个组中,然后就只能在该组中装入或替换。O组和1组,每组都有其自己的装入和替换问题。所谓块失效又发生块争用的时刻,也就是要进行块替换的时间。(1)主存,CaChe地址中各字段的含义,位数及其映象的对应关系见下图。1位1位1位i主存地址Zlmr丁Fg联直接一(查找CaChe地址I;T1%1位1位(2)主存,CaChe空间块的映象对应关系如下图所示。主存块号组2t。区3卜组4,0组JIiE67 H主存的第0,1,4,5块只可映象装入或替换掉物理CaChe中

21、的第0,1块的内容。主存的第2,3,6,7块只可映象装入或替换掉物理Caehe中的第2,3块的内容。(3)程序运行时,由给出的主存块地址流可得到Cache中各个块的使用状况,如下表所示。表中,标*的是候选替换块的块号。时间,123456789101112131415主存块地址124137012546472Cache块O1111,111114444444,44,O0-0*555555232222*7777*77666233,3,3*2222*2*77*命中情况失失失H失替替H替裨替替H替替(4)发生CaChe块失效及块争用的时刻有:6,7,9,10,11,12,14,15(5)CaChe的块命中率为:/,=3/15=0.2

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号