八、软考2014年下半年软件设计师易错题整理

错题1

Flynn分类法基于信息流特征将计算机分成4类,其中(6)只有理论意义而无实例。

(6)A.SISD B.MISD C.SIMD D.MIMD

答案:B

Flynn主要根据指令流和数据流来分类,分为四类:

①单指令流单数据流机器(SISD)

SISD机器是一种传统的串行计算机,它的硬件不支持任何形式的并行计算,所有的指令都是串行执行,并且在某个时钟周期内,CPU只能处理一个数据流。因此这种机器被称作单指令流单数据流机器。早期的计算机都是SISD机器。

②单指令流多数据流机器(SIMD)

SIMD是采用一个指令流处理多个数据流。这类机器在数字信号处理、图像处理以及多媒体信息处理等领域非常有效。

Intel处理器实现的MMXTM、SSE (Streaming SIMD Extensions)、SSE2及SSE3扩展指令集,都能在单个时钟周期内处理多个数据单元。也就是说人们现在用的单核计算机基本上都属于SIMD机器。

③多指令流单数据流机器(MISD)

MISD是采用多个指令流来处理单个数据流。在实际情况中,采用多指令流处理多数据流才是更有效的方法。因此MISD只是作为理论模型出现,没有投入实际应用。

④多指令流多数据流机器(MIMD)

M1MD机器可以同时执行多个指令流,这些指令流分别对不同数据流进行操作。例如,intel和AMD的双核处理器就属于MIMD的范畴。

错题2

网络系统中,通常把(7)置于DMZ区。

(7)A.网络管理服务器 B.Web服务器 C.入侵检测服务器 D.财务管理服务器

答案:B

解析:

DMZ是指非军事化区,也称周边网络,可以位于防火墙之外也可以位于防火墙之内。非军事化区一般用来放置提供公共网络服务的设备,这些设备由于必须被公共网络访问,所以无法提供与内部网络主机相等的安全性。

分析四个备选答案,Web服务器是为一种为公共网络提供Web访问的服务器;网络管理服务器和入侵检测服务器是管理企业内部网和对企业内部网络中的数据流进行分析的专用设备,一般不对外提供访问;而财务服务器是一种仅针对财务部门内部访问和提供服务的设备,不提供对外的公共服务。

错题3

(9)不是蠕虫病毒。

(9)A.熊猫烧香 B.红色代码 C.冰河 D.爱虫病毒

答案:C

解析:

“蠕虫”(Worm)是一个程序或程序序列。它利用网络进行复制和传播,传染途径是通过网络、移动存储设备和电子邮件。最初的蠕虫病毒定义是在DOS环境下,病毒发作时会在屏幕上出现一条类似虫子的东西,胡乱吞吃屏幕上的字母并将其改形,蠕虫病毒因此而得名。常见的蠕虫病毒有红色代码、爱虫病毒、熊猫烧香、Nimda病毒、爱丽兹病毒等。

冰河是木马软件,主要用于远程监控,冰河木马后经其他人多次改写形成多种变种,并被用于入侵其他用户的计算机的木马程序。

错题4

以下媒体中(12)是表示媒体,(13)是表现媒体。

(12)A.声音 B.声音编码 C.超声波 D.喇叭
(13)A.声音 B.声音编码 C.超声波 D.喇叭

答案:B D

解析:

传输媒体指传输表示媒体的物理介质,如电缆、光缆、电磁波等;表示媒体指传输感觉媒体,如声音、图像等的中介媒体,即用于数据交换的编码,如文本编码、声音编码和图像编码等;表现媒体是指进行信息输入和输出的媒体,如键盘、鼠标、话筒以及显示器、打印机、喇叭等;存储媒体指用于存储表示媒体的物理介质,如硬盘、光盘等;感觉媒体指直接作用于人的感觉器官,使人产生直接感觉的媒体,如引起听觉反应的声音,引起视觉反应的图像等。

声音信号的两个基本参数是幅度和频率。幅度是指声波的振幅,通常用动态范围表示,一般用分贝(dB)为单位来计量。频率是指声波每秒钟变化的次数,用Hz表示。人们把频率小于20Hz声波信号称为亚音信号(也称次音信号);频率范围为20Hz〜20kHz 的声波信号称为音频信号;高于20kHz的信号称为超音频信号(也称超声波)。

错题5

模块A、B和C都包含相同的5个语句,这些语句之间没有联系。为了避免重复把这5个语句抽取出来组成一个模块D,则模块D的内聚类型为(16)内聚。

(16)A.功能 B.通信 C.逻辑 D.巧合

答案:D

解析:

模块独立性是创建良好设计的一个重要原则,一般采用模块间的耦合和模块的内聚两个准则来进行度量。内聚是指模块内部各元素之间联系的紧密程度,内聚度越高,则模块的独立性越好。内聚性一般有以下几种:

①巧合内聚,指一个模块内的各处理元素之间没有任何联系。注意看到本题的题干“这些语句之间没有联系”

②逻辑内聚,指模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。

③时间内聚,把需要同时执行的动作组合在一起形成的模块。

④通信内聚,指模块内所有处理元素都在同一个数据结构上操作,或者指各处理使用相同的输入数据或者产生相同的输出数据。

⑤顺序内聚,指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一个功能元素的输出就是下一个功能元素的输入。

⑥功能内聚是最强的内聚,指模块内所有元素共同完成一个功能,缺一不可。

错题6

属于面向对象、解释型程序设计语言的是(18)。

(18)A.XML B.Python C.Prolog D.C++

答案:B

解析:

XML (可扩展标记语言)是标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。

Python是一种面向对象、解释型计算机程序设计语言。

Prolog是逻辑型程序设计语言。

错题7

将高级语言源程序翻译成机器语言程序的过程中,常引入中间代码。以下关于中间代码的叙述中,不正确的是(22)。

A.中间代码不依赖于具体的机器 B.使用中间代码可提高编译程序的可移植性
C.中间代码可以用树或图表示 D.中间代码可以用栈和队列表示

答案:D

解析:

从原理上讲,对源程序进行语义分析之后就可以直接生成目标代码,但由于源程序与目标代码的逻辑结构往往差别很大,特别是考虑到具体机器指令系统的特点,要使翻译一次到位很困难,而且用语法制导方式机械生成的目标代码往往是繁琐和低效的,因此有必要设计一种中间代码,将源程序首先翻译成中间代码表示形式,以利于进行与机器无关的优化处理。由于中间代码实际上也起着编译器前端和后端分水岭的作用,所以使用中间代码也有助于提高编译程序的可移植性。常用的中间代码有后缀式、三元式、 四元式和树(图)等形式。

错题8

假设系统采用PV操作实现进程同步与互斥。若n个进程共享两台打印机,那么信号量S的取值范围为(23)。

(23)A.-2~n B.-(n-1)~1 C.-(n-1)~2 D.-(n-2)~2

答案:D

解析:
系统采用PV操作实现进程同步与互斥,若有n个进程共享两台打印机,那么信号量S初值应为2。当第1个进程执行P(S)操作时,信号量S的值减去1后等于1;当第2 个进程执行P(S)操作时,信号量S的值减去1后等于0;当第3个进程执行P(S)操作时,信号量S的值减去1后等于-1;当第4个进程执行P(S)操作时,信号量S的值减去1后等于-2;……;当第n个进程执行P(S)操作时,信号量S的值减去1后等于-(n-2)。可见,信号量S的取值范围为-(n-2)〜2。

错题9

以下关于增量模型的叙述中,正确的是(29)。

A.需求被清晰定义 B.可以快速构造核心产品
C.每个增量必须要进行风险评估 D.不适宜商业产品的开发

答案:B

解析:软件开发过程以系统需求作为输入,以要交付的产品作为输出,涉及活动、约束和资源使用的一系列工具和技术。瀑布模型、快速原型化模型、增量模型、螺旋模型等都是典型的软件开发过程模型。增量模型是Mills等于1980年提出來的。在使用该模型开发软件时,把软件产品作为一系列的增量构件来设计、编码、集成和测试。每个构件由多个相互作用的模块构成,并能够完成特定的功能。

其优点包括能在较短时间内向用户提交可完成一些有用的工作产品;用户有充裕的时间来学习和适应不断增加的产品功能;项目失败风险较低;优先级最高的服务首先交付,然后再逐步增加新的构件,这样最重要的构件被测试得最充分。在四个选项中,只有选项B是描述增量模型的,要求需求被清晰定义是瀑布模型的一个典型特点,风险评估是螺旋模墦的特点。在当今市场竞争激烈的条件下,用增量模型可以快速的交付一部分产品,是适于商业产品的开发的。

错题10

在ISO/IEC软件质量模型中,可靠性是指在规定的一段时间内和规定的条件下,软件维持在其性能水平的能力;其子特性不包括(31)。

(31)A.成熟性 B.容错性 C.易恢复 D.可移植性

答案:D

解析:

ISO/IEC9126软件质量模型由三个层次组成:第一层是质量特性,第二层是质量子特性,第三层是度量指标。可靠性是一个重要的质量特性,其子特性包括成熟性、容错性和易恢复性。

错题11

多态分为参数多态、包含多态、过载多态和强制多态四种不同形式,其中(38)多态在许多语言中都存在,最常见的例子就是子类泛型化。

A.参数 B.包含 C.过载 D.强制

答案:B

解析:

用最简单的一句话就是:父类型的引用指向子类型的对象。用一句比较通俗的话:同一操作作用于不同的对象,可以产生不同的效果。这就是多态。

多态有四种形式∶参数多态包含多态过载多态强制多态

  • 参数多态和包含多态称为通用多态,

  • 过载多态和强制多态称为特定多态。

参数多态 采用参数化模板,通过给出不同的类型参数,使得一个结构有多种类型 ( 函数模板和类模板 )

包含多态 包含多态最常见的例子就是子类型化,同样的操作可用于一个类型及其子类型。(注意是子类型,不是子类。) 例子 : virtual 类

过载多态 即(重载多态)。 同一个名(操作符、函数名)在不同的上下文中有不同的类型,程序设计语言中基本类型的大多数操作符都是过载多态的。 **例如:**函数重载和运算符重载

强制多态 :编译程序通过语义操作,把操作对象的类型强行加以变换,以符合函数或操作符的要求。程序设计语言中基本类型的大多数操作符,在发生不同类型的数据进行混合运算时,编译程序一般都会进行强制多态。程序员也可以显示地进行强制多态的操作(Casting)。举个例子,比如,int+double,编译系统一般会把int转换为double,然后执行double+double运算,这个int --> double的转换,就实现了强制多态,即可是隐式的,也可显式转换。

错题12

图所示为(46)设计模式,适用于(47)。

在这里插入图片描述

(46)A.抽象工厂(Abstract Factory) B.生成器(Builder)
C.工厂方法(Factory Method) D.原型(Prototype)
(47)A.一个系统要由多个产品系列中的一个来配置时
B.当一个类希望由它的子类来指定它所创建的对象时
C.当创建复杂对象的算法应该独立于该对象的组成部分及其装配方式时
D.当一个系统应该独立于它的产品创建、构成和表示时

答案:B C

每种设计模式都有特定的意图,描述一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心,使该方案能够重用而不必做重复劳动。

抽象工厂(AbstractFactory)模式提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。抽象工厂模式适用于一个系统要独立于它的产品的创建、组合和表示时;一个系统要由多个产品系列中的一个来配置时;当要强调一系列相关的产品对象的设计以便进行联合使用时:当提供一个产品类库,而只想显示它们的接口而不是实现时。

生成器(Builder)模式将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。生成器模式适用于当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时:当构造过程必须允许被构造的对象有不同的表示时。

工厂方法(Factory Method)定义一个用于创建对象的接口,让子类决定将哪一个类实例化,使一个类的实例化延迟到其子类。工厂方法模式适用于当一个类不知道它所必须创建的对象的类的时候:当一个类希望由它的子类来指定它所创建的对象的时候;当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候。

原型(Prototype)模式用原型实例指定创建对象的种类,并且通过拷贝这个原型来创建新的对象。原型模式适用于:当一个系统应该独立于它的产品创建、构成和表示时; 当要实例化的类是在运行时刻指定时,例如通过动态装载,为了避免创建一个与产品类层次平行的工厂类层次时;当一个类的实例只能有几个不同状态组合中的一种时,建立相应数目的原型并克隆它们可能比每次用合适的状态手工实例化该类更方便一些。

错题13

对高级语言源程序进行编译的过程可以分为多个阶段,分配寄存器的工作在(48)阶段进行。

(48)A.词法分析 B.语法分析 C.语义分析 D.目标代码生成

答案:D

解析:

编译程序的功能是把某高级语言书写的源程序翻译成与之等价的目标程序(汇编语言或机器语言)。编译程序的工作过程可以分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成、符号表管理和出错处理等部分,如下图所示。

在这里插入图片描述

目标代码生成是编译器工作的最后一个阶段。这一阶段的任务是把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码,这个阶段的工作与具体的机器密切相关。因此在目标代码生成阶段分配寄存器。

错题14

某个二叉查找树(即二叉排序树)中进行查找时,效率最差的情形是该二叉查找树是(59)。

A.完全二叉树 B.平衡二叉树 C.单枝树 D.满二叉树

答案:C

解析:

参考二分查找

错题15

快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了(61)算法设计策略。可知确定基准元素操作的时间复杂度为Θ (n),则快速排序算法的最好和最坏情况下的时间复杂度为(62)。

(61)A.分治 B.动态规划 C.贪心 D.回溯
(62) A.Θ(n)和Θ(nlgn) B.Θ(n)和Θ(n2)
C.Θ(nlgn)和Θ(nlgn) D.Θ(nlgn)和Θ(n2)

答案:A D

解析:
快速排序算法是应用最为广泛的排序算法之一。其基本思想是将n个元素划分为两个部分:一部分元素值小于某个数;另一部分元素值大于某个数,该数的位置确定:然后进一步划分前面部分和后面部分。根据该叙述,可以知道,这里采用的是分治算法设计策略。

在这里插入图片描述

错题16

对一待排序序列分别进行直接插入排序和简单选择排序,若待排序序列中有两个元素的值相同,则(63)保证这两个元素在排序前后的相对位置不变。

(63)A.直接插入排序和简单选择排序都可以 B.直接插入排序和简单选择排序都不能
C.只有直接插入排序可以 D.只有简单选择排序可以

答案:C

解析:

直接插入排序的思想是:是将n个待排序的元素由一个有序表和一个无序表组成,开始时有序表中只包含一个元素。排序过程中,每次从无序表中取出第一个元素,将其插入到有序表中的适当位置,使有序表的长度不断加长,完成排序过程。

例如,对序列21,48, 21*,9进行直接插入排序,21和21*的相对位置在排序前后可保持,如下所示:

第一趟得到有序子序列:21,48

第二趟得到有序子序列:21,21*,48

第三趟得到有序序列:9,21,21*,48

简单选择排序的过程是:第一趟在n个记录中选取最小记录作为有序序列的第一个记录;第二趟在n-1个记录中选取最小记录作为有序序列的第二个记录:第i趟在n-i+1 个记录中选取最小的记录作为有序序列中的第i个记录,直到将序列排列有序。

对序列21,48, 21*,9进行简单选择排序,过程如下:

第一趟选出最小元素,将其交换至1号位置,序列为:9,48,21*,21

第二趟选出次小元素,将其交换至2号位置,序列为:9,21*,48,21

第三趟选出第三小元素,将其交换至3号位置,序列为:9,21*,21,48

从该例可知,简单选择排序过程不能保证排序码相同的两个元素在排序前后的相对位置不变,直接插入排序则可以。

错题17

PPP中的安全认证协议是(66),它使用三次握手的会话过程传送密文。

(66)A.MD5 B.PAP C.CHAP D.HASH

答案:C

解析:

PPP 认证是可选的。PPP 扩展认证协议(Extensible Authentication Protocol,EAP) 可支持多种认证机制,并且允许使用后端服务器来实现复杂的认证过程。例如通过Radius 服务器进行Web认证时,远程访问服务器(RAS)只是作为认证服务器的代理传递请求和应答报文,并且当识别出认证成功/失败标志后结束认证过程。通常PPP支持的两个认证协议是:

①口令验证协议(Password Authentication Protocol,PAP):提供了一种简单的两次握手认证方法,由终端发送用户标识和口令字,等待服务器的应答,如果认证不成功,则终止连接。这种方法不安全,因为采用文本方式发送密码,可能会被第三方窃取。

②质询握手认证协议(Challenge Handshake Authentication Protocol,CHAP);采用三次握手方式周期地验证对方的身份。首先是逻辑链路建立后认证服务器就要发送一个挑战报文(随机数),终端计算该报文的Hash值并把结果返回服务器,然后认证服务器把收到的Hash值与自己计算的Hash值进行比较,如果匹配,则认证通过,连接得以建立,否则连接被终止。计算Hash值的过程有一个双方共享的密钥参与,而密钥是不通过网络传送的,所以CHAP是更安全的认证机制。在后续的通信过程中,每经过一个随机的间隔,这个认证过程都可能被重复,以缩短入侵者进行持续攻击的时间。值得注意的是,这种方法可以进行双向身份认证,终端也可以向服务器进行挑战,使得双方都能确认对方身份的合法性。

错题18

ICMP协议属于因特网中的(67)协议,ICMP协议数据单元封装在(68)中传送。

(67)A.数据链路层 B.网络层 C.传输层 D.会话层
(68)A.以太帧 B.TCP段 C.UDP数据报 D.IP数据报

答案:B D

解析:

ICMP (Internet control Message Protocol)与IP协议同属于网络层,用于传送有关通信问题的消息,例如数据报不能到达目标站,路由器没有足够的缓存空间,或者路由器向发送主机提供最短通路信息等。ICMP报文封装在IP数据报中传送,因而不保证可靠的提交。

错题19

分配给某公司网络的地址块是210.115.192.0/20,该网络可以被划分为(70)个C类子网。

(70)A.4 B.8 C.16 D.32

答案:16

解析:
由于分配给公司网络的地址块是210.115.192.0/20,留给子网掩码的比特数只有4位,所以只能划分为16个C类子网,这16个C类子网的子网号为11000000〜11001111,即192〜207,所以210.115. 210. 0不属于该公司的网络地址。

专业英语

Teams are required for most engineering projects. Although some small hardware or software products can be developed by individuals, the scale and complexity of modem systems is such, and the demand for short schedules so great, that it is no longer (71) for one person to do most engineering jobs. Systems development is a team (72) ,and the effectiveness of the team largely determines the (73) of the engineering.

Development teams often behave much like baseball or basketball teams. Even though they may have multiple specialties, all the members work toward (74) .However,on systems maintenance and enhancement teams, the engineers often work relatively independently, much like wrestling and track teams.

A team is (75) just a group of people who happen to work together. Teamwork takes practice and it involves special skills. Teams require common processes; they need agreed-upon goals; and they need effective guidance and leadership. The methods for guiding and leading such teams are well known, but they are not obvious.

(71)A.convenient B.existing C.practical D.real
(72) A.activity B.job C.process D.application
(73)A.size B.quality C.scale D.complexity
(74)A.multiple objectives B.different objectives
C.a single objective D.independent objectives
(75) A.relatively B./ C.only D.more than

答案:C A B C D

翻译:

大多数工程项目需要团队完成。虽然有些小规模的硬件或软件产品可以由个人完成,但是现代系统的规模大、复杂性髙以及开发周期短的极高需求,使得一个人完成大多工程工作己经不再现实。系统开发是一个团队活动,团队的效率很大程度上决定工程的质量。

开发团队经常表现的像是棒球队或篮球队,即使棒球队或篮球队可能有多种不同专长,但是所有的队员都朝着一个目标努力。然而在系统维护和增强团队,工程师们的工作就像摔跤和田径队一样经常相对独立。

团队不仅仅是一群人碰巧在一起工作,团队工作需要实践,涉及到多种特殊的技能。 团队需要共同的过程,需要达成一致的目标,需要有效地指导和领导。尽管指导和领导这样的团队的方法是众所周知的,但是它们并不明显。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦想广东收租

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值