软件设计——2014年下半年选择题重要知识点
Posted sunjiaojiao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件设计——2014年下半年选择题重要知识点相关的知识,希望对你有一定的参考价值。
1、三总线结构的计算机总线系统由(数据总线、地址总线和控制总线)组成。
A:CPU总线、内存总线和IO总线
B:数据总线、地址总线和控制总线
C:系统总线、内部总线和外部总线
D:串行总线、并行总线和PCI总线
【解析】:
2、计算机采用分级存储体系的主要目的是为了解决(存储容量、成本和速度之间的矛盾)问题。
A:主存容量不足
B:存储器读写可靠性
C:外设访问效率
D:存储容量、成本和速度之间的矛盾
【解析】:
计算机系统中,高速缓存一般用SRAM,内存一般用DRAM,外存一般采用磁存储器。
SRAM的集成度低、速度快、成本高。
DRAM 的集成度高,但是需要动态刷新。磁存储器速度慢、容量大、价格便宜。
因此,不同的存储设备组成分级存储体系,来解决速度、存储容量和成本之间的矛盾。
A:RISC通常比CISC的指令系统更复杂
B:RISC通常会比CISC配置更多的寄存器
C:RISC编译器的子程序库通常要比CISC编译器的子程序库大得多
D:RISC比CISC更加适合VLSI工艺的规整性要求
RISC和CISC在架构上的不同主要有:
①在指令集的设计上, RISC 指令格式和长度通常是固定的(如ARM是32位的指令)、且寻址方式少而简单、大多数指令在一个周期内就可以执行完:
CISC 构架下的指令长度通常是可变的、指令类型也很多、一条指令通常要着干周期才可以执行完。由于指令集多少与复杂度上的差异,使RISC的处理器可以利用简单的硬件电路设计出指令解码功能,这样易于流水线的实现。相对的CISC则需要通过只读存储器里的微码来进行解码,CISC 因为指令功能与指令参数变化较大,执行流水线作业时有较多的限制。
②RISC架构中只有载入和存储指令可以访问存储器,数据处理指令只对寄存器的内容进行操作。为了加速程序的运算,RISC 会设定多组的寄存器,并且指定特殊用途的寄存器。
CISC构架则允许数据处理指令对存储器进行操作,对寄存器的要求相对不高。
4、Flynn分类法基于信息流特征将计算机分成4类,其中(MISD)只有理论意义而无实例。
A:SISD
B:MISD
C:SIMD
D:MIMD
【解析】:
Flynn主要根据指令流和数据流来分类,分为四类:
①单指令流单数据流机器(SISD)
SISD机器是一种传统的串行计算机,它的硬件不支持任何形式的并行计算,所有的指令都是串行执行,并且在某个时钟周期内,CPU 只能处理一个数据流。因此这种机器被称作单指令流单数据流机器。早期的计算机都是SISD机器。
②单指令流多数据流机器(SIMD)
SIMD是采用一个指令流处理多个数据流。这类机器在数字信号处理、图像处理以及多媒体信息处理等领域非常有效。
Intel处理器实现的MXTM、SSE (Streaming SIMD Extensions)、 SSE2 及SSE3扩展指令集,都能在单个时钟周期内处理多个数据单元。也就是说人们现在用的单核计算机基本上
都属于SIMD机器。
③多指令流单数据流机器(MISD)
MISD是采用多个指令流来处理单个数据流。在实际情况中,采用多指令流处理多数据流才是更有效的方法。因此MISD只是作为理论模型出现,没有投入实际应用。
④多指令流多数据流机器(MIMD)
MIMD机器可以同时执行多个指令流,这些指令流分别对不同数据流进行操作。例如,intel和AMD的双核处理器就属于MIMD的范畴。
5、网络系统中,通常把(Web服务器)置于DMZ区。
B:Web服务器
C:入侵检测服务器
D:财务管理服务器
DMZ是指非军事化区,也称周边网络,可以位于防火墙之外也可以位于防火墙之内。非军事化区一般用来放置提供公共网络服务的设备,这些设备由于必须被公共网络访问,所以无法提供与内部网络主机相等的安全性。
分析四个备选答案:
Web 服务器是:为一种为公共网络提供Web访问的服务器
网络管理服务器和入侵检测服务器是:管理企业内部网和对企业内部网络中的数据流进行分析的专用设备,一般不对外提供访问
财务服务器是:一种仅针对财务部门内部访问和提供服务的设备,不提供对外的公共服务。
6、属于面向对象、解释型程序设计语言的是(Python)。
A:XML
B:Python
C:Prolog
D:C++
【解析】:
Python:一种面向对象、解释型计算机程序设计语言。
Prolog:逻辑型程序设计语言。
Depi:北种可视化开发工具。
7、将高级语言源程序翻译成机器语言程序的过程中,常引入中间代码。以下关于中间代码的叙述中,不正确的是(中间代码可以用栈和队列表示)。
A:中间代码不依赖于具体的机器
B:使用中间代码可提高编译程序的可移植性
C:中间代码可以用树或图表示
D:中间代码可以用栈和队列表示
【解析】:
从原理上讲,对源程序进行语义分析之后就可以直接生成目标代码,但由于源程序与目标代码的逻辑结构往往差别很大,特别是考虑到具体机器指令系统的特点,要使翻译一次到位很困难,而且用语法制导方式机械生成的目标代码往往是繁琐和低效的,因此有必要设计一种中间代码,将源程序首先翻译成中间代码表示形式,以利于进行与机器无关的优化处理。
由于中间代码实际上也起着编译器前端和后端分水岭的作用,所以使用中间代码也有助于提高编译程序的可移植性。
常用的中间代码有后缀式、三元式、 四元式和树(图)等形式。
8、以下关于CMM的叙述中,不正确的是(CMM根据软件过程的不同成熟度划分了5个等级,其中,1级被认为成熟度最高,5级被认为成熟度最低)。
A:CMM是指软件过程能力成熟度模型
B:CMM根据软件过程的不同成熟度划分了5个等级,其中,1级被认为成熟度最高,5级被认为成熟度最低
C:CMMI的任务是将已有的几个CMM模型结合在一起,使之构造成为“集成模型”
D:采用更成熟的CMM模型,一般来说可以提高最终产品的质量
【解析】:
CAM (Capability Maturity Model) 是指软件过程能力成熟度模型,该模型按照软件过程的不同成熟度划分了5个等级,1级被认为成熟度最低,5级则为成熟度最高。
一般来说,采用更成熟的软件过程模型,往往可以得到更高质量的软件产品。
1997 年美国卡内基*梅隆大学软件工程研究所SEI将已有的几个CM模型结合在一起,构造成“集成模型”即CMMI (Capability Maturity Model Integration) 。
9、UML图中,一张交互图显示一个交互。由一组对象及其之间的关系组成,包含它们之间可能传递的消息。(对象图)不是交互图。
A:序列图
B:对象图
C:通信图
D:时序图
【解析】:
UML中提供了多种建模系统的图,体现系统的静态方面和动态方面。对象图(objectdiagram)展现了某一时刻-组对象以及它们之间的关系。
对象图描述了在类图中所建立的事物的实例的静态快照,给出系统的静态设计视图或静态进程视图。
序列图(sequencediagram)是场景(scenario) 的图形化表示,描述了以时间顺序组织的对象之间的交互活动。
通信图(communication diagram)强调收发消息的对象的结构组织。
时序图(TimingDiagram)关注沿着线性时间轴、生命线内部和生命线之间的条件改变,描述对象状态随着时间改变的情况,很像示波器,适合分析周期和非周期性任务。
交互概览图(InteractionOverview Diagram)是UML 2. 0新增的交互图之一,它是活动图的变体,描述业务过程中的控制流概览,软件过程中的详细逻辑概览,以及将多个图进行连接,抽象掉了消息和生命线。
序列图、通信图、交互概览图和时序图均被称为交互图。
10、对高级语言源程序进行编译的过程可以分为多个阶段,分配寄存器的工作在(目标代码生成)阶段进行。
A:词法分析
B:语法分析
C:语义分析
D:目标代码生成
【解析】:
编译程序的功能是把某高级语言书写的源程序翻译成与之等价的目标程序(汇编语言或机器语言)。编译程序的工作过程可以分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成、符号表管理和出错处理等部分,
如下图所示:
目标代码生成是编译器工作的最后一个阶段。这一阶段的任务是把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码,这个阶段的工作与具体的机器密切相关。因此在目标代码生成阶段分配寄存器。
11、对于线性表,相对于顺序存储,采用链表存储的缺点是(数据元素之间的关系需要占用存储空间,导致存储密度不高)。
A:数据元素之间的关系需要占用存储空间,导致存储密度不高
B:表中结点必须占用地址连续的存储单元,存储密度不高
C:插入新元素时需要遍历整个链表,运算的时间效率不高
D:删除元素时需要遍历整个链表,运算的时间效率不高
【解析】:
对于线性表(a1, a2,..., an), 顺序存储时表中元素占用的存储单元地址是连续的,因此逻辑上相邻的元素,其物理位置也相邻,如下图(a) 所示。
线性表采用链式存储有单链表、双向链表、循环链表等形式,单链表如下图(b)所示。
链式存储的基本特点是逻辑上相邻的元素不要求物理位置上相邻,所以需要在元素的存储单元中专门表示下一个(或上一个)元素的存储位置信息,从而可以得到元素间的顺序信息
A:完全二叉树
B:平衡二叉树
C:单枝树
D:满二叉树
非空二叉查找树中的结点分布特点是左子树中的结点均小于树根,右子树中的结点均大于树根。因此,在二叉查找树中进行查找时,走了一条从树根出发到所找到结点的路径,到达一个空的子树则表明查找失败。
根据定义,高度为h的满二叉树中有2h-1个结点,每一层上的结点数都达到最大值。
完全二叉树的最高层只要求结点先占据左边的位置。例如,高度为3的满二叉树如下图(a)
所示,具有6个结点的完全二叉树如下图(b) 所示。
13、已知一个文件中出现的各字符及其对应的频率如下表所示。若采用定长编码,则该文件中字符的码长应为(3)。若采用Huffman编码,则字符序列“face”的编码应为(110001001101)。
A:2
B:3
C:4
D:5
A:110001001101
B:001110110011
C:101000010100
D:010111101011
【解析】:
字符在计算机中是用二进制表示的,每个字符用不同的二进制编码来表示。码的长度影响存储空间和传输效率。若是定长编码方法,用2位码长,只能表示4个字符,即
00、01、10和11;若用3位码长,则可以表示8个字符,即000、001、 010、 011、100、101、110、 111.
对于题中给出的例子,一共有6个字符,因此采用3位码长的编码可以表示这些字符。
Huffman编码是-种最优的不定长编码方法,可以有效的压缩数据。要使用Huffman编码,除了知道文件中出现的字符之外,还需要知道每个字符出现的频率。下图(a) 是题下中给出对应的编码树,可以看到,每个字符及其对应编码为图(b),
因此字符序列“face"的编码应为1100 0 1001101, 即65选择A。
14、PPP中的安全认证协议是(CHAP),它使用三次握手的会话过程传送密文。
A:MD5
B:PAP
C:CHAP
D:HASH
【解析】:
PPP认证是可选的。PPP 扩展认证协议(Extensible Authentication Protocol, EAP)可支持多种认证机制,并且允许使用后端服务器来实现复杂的认证过程。例如通过Radius服务器进行Web认证时,远程访问服务器(RAS)只是作为认证服务器的代理传递请求和应答报文,并且当识别出认证成功/失败标志后结束认证过程。通常PPP支持的两个认证协议是:
①口令验证协议(Password Authentication Protocol, PAP): 提供了一种简单的两次握手认证方法
由终端发送用户标识和口令字,等待服务器的应答,如果认证不成功,则终止连接。这种方法不安全,因为采用文本方式发送密码,可能会被第三方窃取。
②质询握手认证协议(Challenge Handshake Authentication Protocol, CHAP): 采用三次握手方式周期地验证对方的身份。
首先是逻辑链路建立后认证服务器就要发送一个挑战报文(随机数),终端计算该报文的Hash值并把结果返回服务器,然后认证服务器把收到的Hash值与自己计算的Hash值进行比较,如果匹配,则认证通过,连接得以建立,否则连接被终止。计算Hash值的过程有一个双方共享的密钥参与,而密钥是不通过网络传送的
所以CHAP是更安全的认证机制。在后续的通信过程中,每经过一个随机的间隔,这个认证过程都可能被重复,以缩短入侵者进行持续攻击的时间。值得注意的是,这种方法可以进行双向身份认证,终端也可以向服务器进行挑战,使得双方都能确认对方身份的合法性。
A:4
B:8
C:16
D:32
【解析】:
这16个C类子网的子网号为:1000000-~1001111
所以210. 115.210. 0不属于该公司的网络地址。
16、ICMP协议属于因特网中的(网络层)协议,ICMP协议数据单元封装在(IP数据报)中传送。
A:数据链路层
B:网络层
C:传输层
D:会话层
B:TCP段
C:UDP数据报
D:IP数据报
ICMP 报文封装在IP数据报中传送,因而不保证可靠的提交。
以上是关于软件设计——2014年下半年选择题重要知识点的主要内容,如果未能解决你的问题,请参考以下文章