2024下半年软考中级软件设计师,这100题,必做!

1、中断向量提供的是( )。

A.中断源的设备地址

B.中断服务程序的入口地址

C.传递数据的起始地址

D.主程序的断点地址

答案: B

解析:

本题是对中断的概念考查。

中断是这样一个过程: 在CPU执行程序的过程中,由于某一个外部的或CPU内部事件的发生,使CPU暂时中止正在执行的程序,转去处理这一事件(即执行中断服务程序),当事件处理完毕后又回到原先被中止的程序,接着中止前的状态继续向下执行。这一过程就称为中断。

其中对于中断源的识别标志,是可用来形成相应的中断服务程序的入口地址或存放中断服务程序的首地址,也称为中断向量。其他选项为干扰项。本题选择B选项。

2、不同的对象收到同一消息可以产生完全不同的结果,这一现象叫做( )。绑定是一个把过程调用和响应调用所需要执行的代码加以结合的过程。在一般的程序设计语言中,绑定在编译时进行,叫做( );而( )则在运行时进行,即一个给定的过程调用和执行代码的结合直到调用发生时才进行。

A.继承

B.多态

C.动态绑定

D.静态绑定

A.继承

B.多态

C.动态绑定

D.静态绑定

A.继承

B.多态

C.动态绑定

D.静态绑定

答案:

第1题:B

第2题:D

第3题:C

解析:

本题考查面向对象中的基本概念。

在收到消息时,对象要予以响应。不同的对象收到同一消息可以产生完全不同的结果,这一现象叫做多态(polymorphism)。在使用多态的时候,用户可以发送一个通用的消息,而实现的细节则由接收对象自行决定。这样,同一消息就可以调用不同的方法。绑定是一个把过程调用和响应调用所需要执行的代码加以结合的过程。在一般的程序设计语言中,绑定是在编译时进行的,叫做静态绑定。动态绑定则是在运行时进行的,因此,一个给定的过程调用和代码的结合直到调用发生时才进行。

动态绑定是和类的继承以及多态相联系的。在继承关系中,子类是父类的一个特例,所以,父类对象可以出现的地方,子类对象也可以出现。因此在运行过程中,当一个对象发送消息请求服务时,要根据接收对象的具体情况将请求的操作与实现的方法进行连接,即动态绑定。

3、对于正规式0*(10*1)*0*,其正规集中字符串的特点是( )。

A.开头和结尾必须是0

B.1必须出现偶数次

C.0不能连续出现

D.1不能连续出现

答案:

B

解析:

本题考查程序语言基础知识。

闭包运算符"*"将其运算对象进行若干次连接,因此0*表示若干个0构成的串,而(10*1)*则表示偶数个1构成的串。

4、若用n个权值构造一棵最优二叉树(哈夫曼树),则该二叉树的结点总数为( )。

A.2n

B.2n-1

C.2n+1

D.2n+2

答案:

B

解析:

本题考查数据结构基础知识。

二叉树具有以下性质:度为2的结点(双分支结点)数比度为0(叶子结点)数正好少1,并且最优二叉树中只有度为2和0的结点,因此,其结点总数为2n-1。

5、李某在某软件公司兼职,为完成该公司交给的工作,做出了一项涉及计算机程序的发明。李某认为该发明是自己利用业余时间完成的,可以个人名义申请专利。关于此项发明的专利申请权应归属( )。

A.李某

B.李某所在单位

C.李某兼职的软件公司

D.李某和软件公司约定的一方

答案:C

解析:

职务发明是指执行本单位的任务和主要利用本单位的物质条件所完成的发明创造。我国专利法第6条第一款规定:"执行本单位的任务或者主要是利用本单位的物质技术条件所完成的发明创造为职务发明创造。职务发明创造申请专利的权利属于该单位;申请被批准后,该单位为专利权人。"本题题干描述中为职务发明,因此专利权属于公司所有。

6、某项目组拟开发一个大规模系统,且具备了相关领域及类似规模系统的开发经验。下列过程模型中,( )最适合开发此项目。

A.原型模型

B.瀑布模型

C.V模型

D.螺旋模型

答案:B

解析:

本题主要考查我们对各开发模型的理解。

瀑布模型具有可强迫开发人员采用规范的方法;严格规定了各阶段必须提交的文档;要求每个阶段结束后,都要进行严格的评审等优点。但瀑布模型过于理想化,而且缺乏灵活性,无法在开发过程中逐渐明确用户难以确切表达或一时难以想到的需求。

原型模型一般是基于需求不容易明确这一事实:并非所有的需求在系统开发之前都能准确地说明和定义。因此,它不追求也不可能要求对需求的严格定义,而是采用了动态定义需求的方法。快速原型法适用于需求不够明确的项目。

V模型一种典型的测试模型,该模型强调开发过程中测试贯穿始终。

螺旋模型综合了瀑布模型和演化模型的优点,并在此基础上还增加了风险分析。采用螺旋模型时,软件开发沿着螺旋线自内向外旋转,每转一圈都要对风险进行识别和分析,并采取相应的对策。

本题描述的是一个大型项目,那么对文档的要求应该相应较高,而且具备了相关领域及类似规模系统的开发经验,那么系统的需求应该较明确,综合考虑,应该采用瀑布模型。

7、在CPU中用于跟踪指令地址的寄存器是( )。

A.地址寄存器(AR)

B.数据寄存器(MDR)

C.程序计数器(PC)

D.指令寄存器(IR)

答案:

C

解析:

本题主要考查寄存器的相关内容。

程序计数器是用于存放下一条指令所在单元的地址的地方。在程序执行前,必须将程序的起始地址,即程序的一条指令所在的内存单元地址送入程序计数器,当执行指令时,CPU将自动修改程序计数器的内容,即每执行一条指令程序计数器增加一个量,使其指向下一个待指向的指令。程序的转移等操作也是通过该寄存器来实现的。因此CPU中跟踪指令地址的是程序计数器(PC)。

指令寄存器一般用来保存当前正在执行的一条指令。

数据寄存器主要是用来保存操作数和运算结果等信息的,其目的是为了节省读取操作数所需占用总线和访问存储器的时间。

地址寄存器一般用来保存当前CPU所访问的内存单元的地址,以方便对内存的读写操作。

8、包含8个成员的开发小组的沟通路径最多有( )条。

A.28

B.32

C.56

D.64

答案:

A

解析:

在知道小组成员后,求沟通路径可按公式n x (n-1)/2求解,那么题目告诉我们开发小组有8个成员,即存在的沟通路径为8 x (8-1)/2=28条。

9、下列关于风险的叙述不正确的是( )。

A.可能发生的事件

B.一定会发生的事件

C.会带来损失的事件

D.可能对其进行干预,以减少损失的事件

答案:

B

解析:

本题主要考查我们对风险概念的理解。

目前,对风险大致有两种定义:一种定义强调了风险表现为不确定性;而另一种定义则强调风险表现为损失的不确定性。其中广义的定义是:风险表现为损失的不确定性,说明风险产生的结果可能带来损失、获利或是无损失也无获利。

从风险的定义我们不难看出,风险是可能发生的事件,而且是会带来损失的事件,人为对其干预,可能会减少损失。

10、下图是一个软件项目的活动图,其中顶点表示项目里程碑,边表示包含的活动,边上的权重表示活动的持续时间,则里程碑( )在关键路径上。

A.1

B.2

C.3

D.4

答案:

B

解析:

本题主要考查关键路径求解的问题。

从开始顶点到结束顶点的最长路径为关健路径(临界路径),关键路径上的活动为关键活动。

在本题中找出的最长路径是Start->2->5->7->8->Finish,其长度为8+15+15+7+20=65,而其它任何路径的长度都比这条路径小,因此我们可以知道里程碑2在关键路径上。

11、算术表达式采用逆波兰式表示时不用括号,可以利用( )进行求值。与逆波兰式ab-cd+*对应的中缀表达式是( )。

A.数组

B.栈

C.队列

D.散列表

A.a-b+c*d

B.(a-b)*c+d

C.(a-b)*(c+d)

D.a-b*c+d

答案:

第1题:B

第2题:C

解析:

逆波兰式也叫后缀表达式,即将运算符写在操作数之后的表达式,它不需使用括号,在将算术表达式转换为逆波兰式表示时,需要分配2个栈,一个作为临时存储运算符的栈S1(含一个结束符号),一个作为输入逆波兰式的栈S2(空栈)。

而逆波兰式ab-cd+*转换为中缀表达式的过程为:ab-cd+* = (ab-)*(cd+) = (a-b)*(cd+) = (a-b)*(c+d)。因此本题答案选C。

12、某文件管理系统在磁盘上建立了位示图(bitmap),记录磁盘的使用情况。若系统的字长为32位,磁盘上的物理块依次编号为:0、1、2、...,那么4096号物理块的使用情况在位示图中的第( )个字中描述;若磁盘的容量为200GB,物理块的大小为1MB,那么位示图的大小为( )个字。

A.129

B.257

C.513

D.1025

A.600

B.1200

C.3200

D.6400

答案:

第1题:A

第2题:D

解析:

位示图法是为管理磁盘空闲存储空间而提出的一种方法,该方法是在外存上建立一张位示图来记录文件存储器的使用情况。每一位仅对应文件存储器上的一个物理块,取值0和1分别表示空闲和占用。

在本题中,题目告诉我们字长32位,即一个字可以表示32个物理块得使用情况,而物理块依次编号为:0、1、2、...,那么第4096号物理块的使用情况应该在位示图中的第129个字中描述,因为(4096+1)/32等于128余1,所以这一位应属于第129个字的第一位,其中4096+1的这个1是因为编号是从0开始计数的,所以才加1。

由于磁盘的容量为200GB,每个物理块的大小为1MB,那么总共有200GB/1MB=200 x1024个物理块,需要200 x1024位来表示,因此位示图中字的个数=200 x1024/32=6400个。

13、在软件维护阶段,为软件的运行增加监控设施属于( )维护。

A.改正性

B.适应性

C.完善性

D.预防性

答案:

C

解析:

根据引起软件维护的原因不同,软件维护通常可分为以下四种类型:

改正性维护。是指在使用过程中发现了隐蔽的错误后,为了诊断和改正这些隐蔽错误而修改软件的活动。该类维护一般占总维护工作量的25%。

适应性维护。是指为了适应变化了的环境而修改软件的活动。该类维护一般占总维护工作量的20%。

完善性维护。是指为了扩充或完善原有软件的功能或性能而修改软件的活动。该类维护一般占总维护工作量的50%。

预防性维护。是指为了提高软件的可维护性和可靠性、为未来的进一步改进打下基础而修改软件的活动。该类维护一般占总维护工作量的5%。

而本题所描述的为软件的运行增加监控设施属于完善性维。

14、给定关系模式R,U= {A,B,C},F={AB→C,C→B}。关系R( ),且分别有( )。

A.只有1个候选关键字AC

B.只有1个候选关键字AB

C.有2个候选关键字AC和BC

D.有2个候选关键字AC和AB

A.1个非主属性和2个主属性

B.2个非主属性和1个主属性

C.0个非主属性和3个主属性

D.3个非主属性和0个主属性

答案:

第1题:D

第2题:C

解析:

本题主要考查函数依赖的基础知识。

关系中的某一属性或属性组的值能唯一的标识一个元组,而其任何真子集都不能再标识,则称该属性组为候选码。

但这里大家要注意,如果一个关系有多个不同的主码时,那么这些主码组合在一起就是候选码,也就是说一个关系的主码只能选一个,而候选码可以有多个,这就好选总统一样,候选人可以多个,但最终的总统只能有一个,当然也有些地方的候选人就只有一个,候选码也一样,也有可能只有一个,在这种情况下,候选码就是主码。

主属性和非主属性是互补的,一个关系模式中的属性不是主属性就是非主属性。组成候选码的属性就是主属性,其它的就是非主属性,所以要判断关系模式中的属性是主属性还是非主属性,首先要求解出其候选码。

在本题中,从题目给出的函数依赖关系我们可以看出,AB能推导出C,即能推导出所有的属性;而C能推导出B,同样,AC也能推导出所有的属性,因此AB与AC都是该关系的候选码。所以该关系中的属性都是主属性,没有非主属性。

15、在程序的执行过程中,Cache与主存的地址映像由( )。

A.专门的硬件自动完成

B.程序员进行调度

C.操作系统进行管理

D.程序员和操作系统共同协调完成

答案:

A

解析:

Cache与主存的地址映像需要专门的硬件自动完成,使用硬件来处理具有更高的转换速率。

16、 无向图中一个顶点的度是指图中与该顶点相邻接的顶点数。若无向图G中的顶点数为n,边数为e,则所有顶点的度数之和为( )。

A.n*e

B.n e

C.2n

D.2e

答案:

D

解析:

在无向图中,一条边连接两个顶点,即如果存在一条边,那么与这条边相关的两个顶点的度都为加1,那么总的度就应该加2,因此,如果图中有n条边,那么所有顶点的度数之和就应该为2e。

17、内存单元按字节编址,地址0000A000H~0000BFFFH共有( )个存储单元。

A.8192K

B.1024K

C.13K

D.8K

答案:

D

解析:

本题考查计算机中的存储部件组成

内存按字节编址,地址从0000A000H到0000BFFFH时,存储单元数为0000BFFFH -0000A000H +1H=00002000H,转换为二进制后为0010 0000 0000 0000即213,即8K个存储单元。

18、一条指令的执行过程可以分解为取指、分析和执行三步,在取指时间t取指=3△t、分析时间t分析=2△t、执行时间t执行=4△t的情况下,若按串行方式执行,则10条指令全部执行完需要( )△t;若按流水线的方式执行,则10条指令全部执行完需要( )△t。

A.40

B.70

C.90

D.100

A.20

B.30

C.40

D.45

答案:

第1题:C

第2题:D

解析:

串行执行时,每条指令都需三步才能执行完,没有重叠。总的执行时间为:(3+2+4)△t×10=90△t。

按流水线方式执行,系统在同一时刻可以进行第k条指令的取指,第k+1条指令的分析,第k+2条指令的执行,所以效率大大提高了。我们平时用的流水线计算公式是:第一条指令顺序执行时间+(指令条数-1)*周期,而周期与三个步骤时间最长的一段保持一致,因此本题的计算结果为:9+(10-1)*4=45。

19、甲和乙要进行通信,甲对发送的消息附加了数字签名,乙收到该消息后利用( )验证该消息的真实性。

A.甲的公钥

B.甲的私钥

C.乙的公钥

D.乙的私钥

答案:

A

解析:

数字签名技术是对非对称加密技术与信息摘要的综合应用。通常的做法是:先对正文产生信息摘要,之后使用发送者A的私钥对该信息摘要进行加密,这就完成了签名。当接收者B收到签了名的摘要以后,会对摘要使用发送者A的公钥进行解密(认证),若能认证,则表明该信息确实是由A发送的。这就是数字签名技术。

20、模块A执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能,则该模块具有( )内聚。

A.顺序

B.过程

C.逻辑

D.功能

答案:

C

解析:

内聚是指模块内部各元素之间联系的紧密程度,模块的内聚类型通常可以分为7种,根据内聚度从高到低排序分别如下:

功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。

顺序内聚:处理元素相关,而且必须顺序执行。

通信内聚:所有处理元素集中在一个数据结构的区域上。

过程内聚:处理元素相关,而且必须按特定的次序执行。

瞬时内聚:所包含的任务必须在同一时间间隔内执行(如初始化模块)。

逻辑内聚:完成逻辑上相关的一组任务。

偶然内聚:完成一组没有关系或松散关系的任务。

......

未完

相关推荐
XINGTECODE1 分钟前
海盗王集成网关和商城服务端功能golang版
开发语言·后端·golang
alphaTao3 分钟前
LeetCode 每日一题 2024/11/18-2024/11/24
算法·leetcode
天天扭码6 分钟前
五天SpringCloud计划——DAY2之单体架构和微服务架构的选择和转换原则
java·spring cloud·微服务·架构
程序猿进阶7 分钟前
堆外内存泄露排查经历
java·jvm·后端·面试·性能优化·oom·内存泄露
FIN技术铺11 分钟前
Spring Boot框架Starter组件整理
java·spring boot·后端
kitesxian12 分钟前
Leetcode448. 找到所有数组中消失的数字(HOT100)+Leetcode139. 单词拆分(HOT100)
数据结构·算法·leetcode
前端百草阁15 分钟前
【TS简单上手,快速入门教程】————适合零基础
javascript·typescript
彭世瑜16 分钟前
ts: TypeScript跳过检查/忽略类型检查
前端·javascript·typescript
Backstroke fish17 分钟前
Token刷新机制
前端·javascript·vue.js·typescript·vue
zwjapple17 分钟前
typescript里面正则的使用
开发语言·javascript·正则表达式