首页>计算机>软件水平考试>模拟试题>正文
软考:06年5月软件设计师难题自解1

www.zige365.com 2008-11-11 16:35:14 点击:发送给好友 和学友门交流一下 收藏到我的会员中心

本人考11月4日的软件设计师,所以看了一下5月份的试卷,有些题不会做,就从网上查了一下资料,特把查得的结果贴上来。

高速缓存Cache与主存间采用全相联地址映像方式,高速缓存的容量为4MB,分为4块,每块1MB,主存容量为256MB。若主存读写时间为30ns,高速缓存的读写时间为3ns,平均读写时间为3.27ns,则该高速 缓存的命中率 (1) %。若地址变换表如下所示,则主存地址为8888888H时,高速缓存地址为 (2) H

解析:(1)D 这是一道命中率的计算题.
公式:cache读写时间 * 命中率+主存读写时间 * (1-命中率)=平均读写时间。
设命中率为x,根据题意可以得到3x+30(1-x)=3.27得出:x=0.99
(2)D这道题一个是考查直接映像、全相联、组相联,以及在具体映射时候是如何实现的。这里有个基本的计算,那就是1M=10 00 00H
这样是不是就比较醒目了:
内存地址范围 Cache地址范围
3800000H-38FFFFFH 000000H-0FFFFFH
8800000H-88FFFFFH 100000H-1FFFFFH
5900000H-59FFFFFH 200000H-2FFFFFH
6700000H-67FFFFFH 300000H-3FFFFFH
=================================================
某指令流水线由5段组成,各段所需要的时间如下图所示。

图片点击可在新窗口打开查看
 

  连续输入10条指令时的吞吐率为___(6)___。
  (6)A.10/70Δt    B.10/49Δt    C.10/35Δt    D.10/30Δt

解析:(6)C。只要你会画时空图就知道怎么做了。
  ==表示正执行第一条指令,~~表示正执行第二条指令
每段--+--+--+--+--+--+--+--+--+--+--+时间轴
  △t==       ~~            |---3△t---|
3△t   == == == ~~ ~~ ~~   |        |
  △t            ==       ~~|        |
2△t               == ==   |~~ ~~   |
  △t                     ==|      ~~|
第一条指令完成时间是8△t 。可以看出由于指令重叠,此后每3△t 完成一条指令(即+号)。所以,后9条指令完成时间是9*3△t。所以它完成10个任务所用的时间为:8△t +9*3△t = 35△t 
吞吐率=n/Tk    ,n为任务数,Tk是完成n个任务所用的时间。因些吞吐率为:10/35△t。
======================================
与逆波兰式ab+-c*d-对应的中缀表达式是45
45A. a-b-c*d B. -(a+b)* c-d C. -a+b*c-d D. (a+b)* (-c-d)
解析:B。逆波兰式不需要括号,将运算对象写在前面,而把运算符号写在后面。
先看一个中缀表达式:1+(2*(4-2))%5,它的逆波兰式(后缀表达式)为:1242-*5%。
根椐这个规律,可以明白:-(a+b)*c-d正好与ab+-c*d-相配。
PS:在网上查资料,发现自己在数据结构课堂上曾学习过与逆波兰式相关的知识。但当时老师似乎并没有提到逆波兰式这个称号,也有可能是自己没用心听吧。

我要投稿 新闻来源: 编辑: 作者:
相关新闻
软件水平考试:数据结构精选单选题练习
软件水平考试:数据结构精选填空题训练
软件水平考试:数据库原理选择题总结
软件水平考试:通过ISO9001不是终点,而是起点
软件水平考试:ISO9000对研发管理的作用
软件水平考试:局域网