2024年5月4日发(作者:)
2020年下半年软件设计师
真题+答案解析
上午选择
1、在程序执行过程中,高速缓存(Cache)与主存间的地址映射由(
A.操作系统进行管理
B.操作系统进行管理
C.程序员自行安排
D.硬件自动完成
答案:D
Cache与主存地址映射由硬件完成。
2、计算机中提供指令地址的程序计数器PC在()中。
A.控制器
B.运算器
C.存储器
D.I/O设备
答案:A
PC是控制器中的子部件。
3、以下关于两个浮点数相加运算的叙述中,正确的是().
A.首先进行对阶,阶码大的向阶码小的对齐
壱
)。
B.首先进行对阶,阶码小的向阶码大的对齐
C.不需要对阶,直接将尾数相加
D.不需要对阶,直接将阶码相加
答案:B
浮点数运算的过程:对阶→尾数运算→规格化。
其中对阶的过程:小数向大数看齐,尾数右移。
4、某计算机系统的CPU主频为2.8GHz。某应用程序包括3类指令,
各类指令的CPI(执行每条指令所需要的时钟周期数)及指令比例如’下
表所示。执行该应用程序时的平均CPI为(4);运算速度用MIPS表
示,约为(5)。
A.25
B.3
C.3.5
D.4
答案:C
5、A.700
B.800
C.930
弐
D.1100
答案:B
第一问关于平均CPI,即对列出的CPI求平均数。
4*35%+2*45%+6*20%=3.5。
第二问求MIPS,即每秒执行的百万条指令数。
根据第一问CPI,每条指令需要的时钟周期为4,每个时钟周期为主
频的倒数,即1/2.8G秒,则每条指令需要时间3.5/2.8G秒。
每秒执行指令数为1/(3.5/2.8G)=2.8G/3.5=0.8G=800M。
(1M=106,1G=109)
6、中断向量提供().
A.函数调用结束后的返回地址
B.I/O设备的接口地址
C.主程序的入口地址
D.中断服务程序入口地址
答案:D
中断向量就是指中断服务程序的入口地址,它存放着一条跳转到中
断服务程序入口地址的跳转指令。
7、以下关于认证和加密的叙述中,错误的是()。
A.加密用以确保数据的保密性
B.认证用以确保报文发送者和接收者的真实性
参
C.认证和加密都可以阻止对手进行被动攻击
D.身份认证的目的在于识别用户的合法性,阻止非法用户访问系
统
答案:C
认证一般有账户名/口令认证、使用摘要算法认证和基于PKI的认证。
认证只能阻止主动攻击,不能阻止被动攻击。
8、访问控制是对信息系统资源进行保护的重要措施,适当的访问控
制能够阻止未经授权的用户有意或者无意地获取资源。计算机系统
中,访问控制的任务不包括()。
A.审计
B.授权
C.确定存取权限
D.实施存取权限
答案:A
安全审计对主体访问和适用客体的情况进行记录和审查,以保证安
全规则被正确执行,并帮助分析安全事故产生的原因。与访问控制无
关。
9、路由协议称为内部网关协议,自治系统之间的协议称为外部网关
协议,以下属于外部网关协议的是()。
四
B.0SPF
答案:C
RIP:RIP(RoutingInformationProtocol,路由信息协议)是一种内部网
关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内
的路由信息的传递。
OSPF:OSPF(OpenShortestPathFirst开放式最短路径优先)是一个内
部网关协议(InteriorGatewayProtocol,简称IGP),用于在单一自治
系统(autonomoussystem,AS)内决策路由。是对链路状态路由协议
的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。
BGP:边界网关协议(BGP)是运行于TCP上的一种自治系统的路由
协议。BGP是唯一一个用来处理像因特网大小的网络的协议,也是
唯一能够妥善处理好不相关路由域间的多路连接的协议。
UDP:传输层协议。
10、所有资源只能由授权方或以授权的方式进行修改,即信息未经授
权不能进行改变的特性是指信息的()。
A.完整性
B.可用性
C.保密性
D.不可抵赖性
伍
答案:A
数据的机密性(保密性)是指数据在传输过程中不能被非授权者偷
看;
数据的完整性是指数据在传输过程中不能被非法篡改,本题涉及到修
改的只有完整性;
数据的真实性(不可抵赖性)是指信息的发送者身份的确认或系统中
有关主体的身份确认,这样可以保证信息的可信度;
可用性指的是发送者和接受者双方的通信方式正常。
11、在Windows操作系统下,要获取某个网络开放端口所对应的应
用程序信息,可以使用命令()。
ig
oute
t
up
答案:C
ipconfig(linux:ifconfig)(显示TCP/IP网络配置值,如:IP地址,
MAC地址,网关地址等)。
tracert(linux:traceroute):用于确定IP数据包访问目标所采取的路
径,若网络不通,能定位到具体哪个结点不通。
netstat:用于显示网络连接、路由表和网络接口信息。
nslookup(查询DNS记录)。
六
12、甲、乙两个申请人分别就相同内容的计算机软件发明创造,向
国务院专利行政部门门提出专利申请,甲先于乙一日提出,则()。
A.甲获得该项专利申请权
B.乙获得该项专利申请权
C.甲和乙都获得该项专利申请权
D.甲和乙都不能获得该项专利申请权
答案:A
谁先申请则属于谁。
13、小王是某高校的非全8制在读研究生,目前在甲公司实习,负责
了该公司某软件项目的开发工作并撰写相关的软件文档。以下叙述
中,正确的是()。
A.
权利
B.该软件文档属于职务作品,甲公司享有该软件著作权的全部权
利
C.该软件文档不属于职务作品,小王享有该软件著作权的全部权
利
D.该软件文档不属于职务作品,甲公司和小王共同享有该著作权
的全部权利
答案:B
七
该软件文档属于职务作品,但小王享有该软件著作权的全部
软件著作权属于公司所有。
14、按照我国著作权法的权利保护期,以下权利中,()受到永久
保护。
A.发表权
B.修改权
C.复制权
D.发行权
答案:B
著作权中修改权、署名权、保护作品完整权都是永久保护的。
15、结构化分析方法中,数据流图中的元素在()中进行定义。
A.加工逻辑
B.实体联系图
C.流程图
D.数据字典
答案:D
数据字典会对数据流图中元素进行定义说明。
16、良好的启发式设计原则上不包括()。
A.提高模块独立性
B.模块规模越小越好
八
C.模块作用域在其控制域之内
D.降低模块接口复杂性
答案:B
1、模块化设计要求高内聚、低耦合,模块独立体现的就是高内聚低
耦合。
2、在结构化设计中,系统由多个逻辑上相对独立的模块组成,在模
块划分时需要遵循如下原则:
(1)模块的大小要适中。系统分解时需要考虑模块的规模,过大的
模块可能导致系统分解不充分,其内部可能包括不同类型的功能,需
要进一步划分,尽量使得各个模块的功能单一;过小的模块将导致系
统的复杂度增加,模块之间的调用过于频繁,反而降低了模块的独立
性。不是越小越好。
(2)模块的扇入和扇出要合理。模块的扇入指模块直接上级模块的
个数。模块的直属下级模块个数即为模块的扇出。
(3)深度和宽度适当。深度表示软件结构中模块的层数,如果层数
过多,则应考虑是否有些模块设计过于简单,看能否适当合并。宽度
是软件结构中同一个层次上的模块总数的最大值,一般说来,宽度越
大系统越复杂,对宽度影响最大的因素是模块的扇出。在系统设计时,
需要权衡系统的深度和宽度,尽量降低系统的复杂性,减少实施过程
的难度,提高开发和维护的效率。需要控制模块接口的复杂性。
3、尽力使模块的作用域在其控制域之内。模块控制域:这个模块本
身以及所有直接或间接从属于它的模块的集合。模块作用域:指受该
九
模块内一个判定所影响的所有模块的集合。
17、如下所示的软件项目活动图中,顶点表示项目里程碑,连接顶点
的边表示包含的活动,边上的权重表示活动的持续时间(天),则完成
该项目的最短时间为(17)天。在该活动图中,共有(18)条关键路
径。
A.17
B.19
C.20
D.22
答案:D
18、A.1
B.2
C.3
D.4
拾
答案:B
关键路径:ABFJL和ADGIJL
项目工期:22天
19、软件项目成本估算模型COCOM01I中,体系结构阶段模型基于()
进行估算。
A.应用程序点数量
B.功能点数量
C.复用或生成的代码行数
D.源代码的行数
答案:D
COCOMOII模型也需要使用规模估算信息,体系结构阶段,在模型
层次结构中有3种不同规模估算选择,即:对象点、功能点和代码行。
应用组装模型使用的是对象点;早期设计阶段模型使用的是功能点,
功能点可以转换为代码行。体系结构模型把工作量表示为代码行数。
20、某表达式的语法树如下图所示,其后缀式(逆波兰式)是()。
拾壱
-+*
-c+d*
-d*+
-cd+*
答案:C
21、用C/C++语言为某个应用编写的程序,经过(
程序。
A.预处理、编译、汇编、链接
B.编译、预处理、汇编、链接
C.汇编、预处理、链接、编译
D.链接、预处理、编译、汇编
答案:A
对于编译型语言,处理过程为:预处理-编译-链接,没有汇编过程,
对比来看,预处理、编译、汇编、链接最合适。.
拾弐
)后形成可执行
22、在程序的执行过程中,系统用()实现嵌套调用(递归调用)函数
的正确返回。
A.队列
B.优先队列
C.栈
D.散列表
答案:C
在递归调用中,需要在前期存储某些数据,并在后面又以存储的逆
序恢复这些数据,以提供之后使用的需求,因此,需要用到栈来实现
递归。简单的说,就是在前行阶段,对于每一层递归,函数的局部变
量、参数值以及返回地址都被压入栈中。在退回阶段,位于栈顶的局
部变量、参数值和返回地址被弹出,用于返回调用层次中执行代码的
其余部分,也就是恢复了调用的状态。
23、假设系统中有三个进程P1、P2和P3,两种资源R1、R2。如果
进程资源图如图①和图②所示,那么()。
A.图①和图②都可化简
B.图①和图②都不可化简
拾参
C.图①可化简,图②不可化简
D.图①不可化简,图②可化简
答案:C
图①当前状态下:
R1:已分配2个,剩余1个。
R2:已分配3个,剩余0个。
P1:已获得1个R1,1个R2,无其他资源需求,可化简,化简后释
放当前1个R1,1个R2。
P2:已获得1个R2,仍需2个R1,此时R1资源不足,P2是阻塞结
点。等待P1释放后可化简。
P3:已获得1个R1,1个R2,仍需1个R2,此时R2资源不足,P3
是阻塞结点。等待P1释放后可化简。
图②当前状态下:
R1:已分配3个,剩余0个。
R2:已分配2个,剩余0个。
P1:已获得1个R1,仍需1个R2,此时R2资源不足,P1是阻塞结
点。
P2:已获得1个R1,1个R2,仍需1个R1,此时R1资源不足,P2
是阻塞结点。
P3:已获得1个R1,1个R2,仍需1个R2,此时R2资源不足,P3
是阻塞结点。
所有结点均阻塞,无法化简。
拾四
24、假设计算机系统的页面大小为4K,进程P的页面变换表如下表
所示。若P要动问的逻辑地址为十六进制3C20H,那么该逻辑地址经
过地址变换后,其物理地址应为()。
A.2048H
B.3C20H
C.5C20H
D.6C20H
答案:D
1、根据页面大小4K(=212)可知,页内地址长度需要12位二进制
表示。
2、根据逻辑地址3C20H,其中低12位二进制为页内地址,即对应十
六进制低3位C20H为页内地址,剩余高位3H为页号,转换为十进
制结果为3。
3、查表可得,页号3对应的物理块号为6(即十六进制6H),再拼
接原页内地址C20H,即为最终的物理地址6C20H。
拾伍
25、某文件系统采用索引节点管理,其磁盘索引块和磁盘数据块大小
均为1KB字节且每个文件索引节点有8个地址项iaddr[0]~iaddr[7],
每个地址项大小为4字节,其中iaddr[0]~iaddr[4]采用直接地址索引,
iaddr[5]和iaddr[6]采用一级间接地址索引,iaddr[7]采用二级间接地
址索引。若用户要访问文件userA中逻辑块号为4和5的信息,则系
统应分别采用(25),该文件系统可表示的单个文件最大长度是(26)
KB。
A.直接地址访问和直接地址访问
B.直接地址访问和一级间接地址访问
C.一级问接地址访问和一级间接地址访问
D.一级间接地址访问和二级间接地址访问
答案:B
26、A.517
B.1029
C.65797
D.66053
答案:D
其中0~4号节点为直接索引,对应逻辑块号为0~4。
其中5~6号节点为一级间接索引方式,对应逻辑块号从5开始。
每个索引盘大小为1KB,地址项大小为4B,故每个索引盘有(1KB/4B)
=256个索引。
拾六
一级间接索引有2个盘块,共有512个索引,对应512个逻辑盘块。
其中7号节点为二级间接索引,共有256*256=65536个索引,对应
65536个逻辑盘块。
单个文件最大为:(5+512+65536)*1KB=66053KB。
27、假设系统有n(n≥5)个进程共享资源R,且资源R的可用数为5。
若采用PV操作,则相应的信号量S的取值范围应为()。
A.-1~n-1
B.-5~5
C.-(n-1)~1
D.-(n-5)~5
答案:D
PV信息量的取值表示资源数,最大值为初始可用资源5;
当信号量取值小于0时,可表示排队进程数,此时n个进程,最大排
队数为n-5,信号量最小取值为-(n-5)。
28、在支持多线程的操作系统中,假设进程P创建了线程T1、T2和
T3,那么以下叙述中错误的是()。
A.线程T1、T2和T3可以共享程P的代码
B.线程T1、T2可以共享P进程中T3的栈指针
C.线程T1、T2和T3可以共享进程P打开的文件
D.线程T1、T2和T3可以共享进程P的全局变量
拾七
答案:B
线程共享的内容包括:进程代码段、进程的公有数据(利用这些共享
的数据,线程很容易的实现相互之间的通讯)、进程打开的文件描述
符、信号的处理器、进程的当前目录、进程用户ID与进程组ID。
线程独有的内容包括:线程ID、寄存器组的值、线程的堆栈、错误返
回码、线程的信号屏蔽码。
29、喷泉模型是一种适合于面向(29)开发方法的软件过程模型。该
过程模型的特点不包括(30)。
A.对象
B.数据
C.数据流
D.事件
答案:A
喷泉模型是面向对象的开发模型。
30、A.以用户需求为动力
B.支持软件重用
C.具有迭代性
D.开发活动之间存在明显的界限
答案:D
31、若某模块内所有处理元素都在同一个数据结构上操作,则该模块
拾八
的内聚类型为()。
A.逻辑
B.过程
C.通信
D.功能
答案:C
32、软件质量属性中,()是指软件每分钟可以处理多少个请求。
A.响应时间
B.吞吐量
C.负载
D.容量
答案:B
吞吐量:指在给定的时间内,系统所能处理的任务的数量。
响应时间:指系统对请求作出响应的时间。
容量:存储器所能存储的全部信息量称为该存储器的容量。
33、提高程序执行效率的方法一般不包括()。
A.设计更好的算法
B.采用不同的数据结构
C.采用不同的程序设计语言
D.改写代码使其更紧凑
拾九
答案:D
改写代码仅使其结构上更紧凑,并不能提高执行效率问题。其他方
式可以。
34、软件可靠性是指系统在给定的时间间隔内、在给定条件下无失效
运行的概率。若MTTF和MTTR分别表示平均无故障时间和平均修复
时间,则公式()可用于计算软件可靠性。
/(1+MTTF)
B.1/(1+MTTF)
/(1+MTTR)
D.1/(1+MTTR)
答案:A
可靠性可以用可以用MTTF/(1+MTTF)来度量。
35、用白盒测试技术对下面流程图进行测试,设计的测试用例如下表
所示。至少采用测试用例(35)才可以实现语句覆盖;至少采用测试
用例(36)才可以实现路径覆盖。
弐拾
A.①
B.②
C.③
D.④
答案:A
36、A.①
B.①②
C.③④
D.①②③④
答案:D
弐拾壱
根据测试用例:
用例①可以满足覆盖所有语句,满足语句覆盖。
用例①可以满足路径ace,用例②可以满足路径abd,用例③可以满
足路径abe,用例④可以满足路径acd。所以满足路径覆盖需要测试
用例①②③④。
37、面向对象程序设计语言C++、JAVA中,关键字()可以用于区
分同名的对象属性和局部变量名。
e
ted
答案:D
this可以区分同名的对象属性和局部变量名。
38、采用面向对象方法进行系统开发时,以下与新型冠状病毒有关的
对象中,存在“一般-特殊’关系的是()。
A.确诊病人和治愈病人
B.确诊病人和疑似病人
C.医生和病人
D.发热病人和确诊病人
答案:D
弐拾弐
发热病人是一般对象,确诊病人是发热病人的特殊化。
39、进行面向对象系统设计时,针对包中的所有类对于同-类性质的
变化;一个变化若对一个包产生影响,则将对该包中的所有类产生影
响,而对于其他的包不造成任何影响。这属于()设计原则。
A.共同重用
B.开放-封闭
C.接口分离
D.共同封闭
答案:D
共同封闭原则:包中的所有类对于同一种性质的变化应该是共同封
闭的。一个变化若对一个封闭的包产生影响,则将对该包中的所有类
产生影响,而对于其他包则不造成任何影响。面向对象设计的原则之
一。
共同重用原则:面向对象编程术语,指一个包中的所有类应该是共同
重用的。如果重用了包中的一个类,那么也就相当于重用了包中的所
有类。
开放-封闭原则:对扩展开放,对修改封闭。
接口隔离原则:使用多个专门的接口比使用单一的总接口要好。
40、多态有不同的形式,()的多态是指同一个名字在不同上下文
中所代表的含义不同。
弐拾参
A.参数
B.包含
C.过载
D.强制
答案:C
参数多态:应用广泛、最纯的多态。
包含多态:同样的操作可用于一个类型及其子类型。包含多态一般需
要进行运行时的类型检查。包含多态在许多语言中都存在,最常见的
例子就是子类型化,即一个类型是另外一个类型的子类型。
强制多态:编译程序通过语义操作,把操作对象的类型强行加以变换,
以符合函数或操作符的要求。
过载多态:同一个名(操作符﹑函数名)在不同的上下文中有不同的
类型。目前软设考查比较多的是过载多态。
41、某类图如图所示,下列选项错误的是()。
A.一个A1的对象可能与一个A2的对象关联
弐拾四
B.一个A的非直接对象可能与一个A1的对象关联
C.类B1的对象可能通过A2与C1的对象关联
D.有可能A的直接对象与B1的对象关联
答案:D
A是抽象类,不能直接产生对象.
42、UML图中,对象图展现了(42),(43)所示对象图与下图所
示类图不一致。
A.一组对象、接口、协作和它们之间的关系
B.一组用例、参与者以及它们之间的关系
C.某一时刻一组对象以及它们之间的关系
D.以时间顺序组织的对象之间的交互活动
答案:C
43、A.
B.
弐拾伍
C.
D.
答案:D
对象图:展现了某一个时刻一组对象以及它们之间的关系。
类图:展现了一组对象、接口、协作和它们之间的关系。
用例图:展现了一组用例、参与者以及它们之间的关系。
序列图:是场景的图形化表示,描述了以时间顺序组织的对象之间的
交互活动。
多重度:图示表示的是1个A可以对应多个B,1个B只能对应1个
A。
44、某快餐厅主要制作并出售儿童套餐,一般包括主餐(各类比萨)、
饮料和玩具,其餐品种类可能不同,但制作过程相同。前台服务员
(Waiter)调度厨师制作套餐。欲开发一软件,实现该制作过程,设计
如下所示类图。该设计采用(44)模式将一个复杂对象的构建与它的
表示分离,使得同样的构建过程可以创建不同的表示。其中,(45)
构造一个使用Builder接口的对象。该模式属于(46)模式,该模式
弐拾六
适用于(47)的情况。
A.生成器(Builder)
B.抽象工厂(AbstractFactory)
C.原型(Prototype)
D.工厂方法(FactoryMethod)
答案:A
本题类图中有明确的builder关键字,是生成器模式。
45、uilder
izaBuilder
答案:C
生成器(构建器)模式的意图是:将一个复杂类的表示与其构造相
分离,使得相同的构建过程能够得出不同的表示。
46、A.创建型对象
B.结构型对象
弐拾七
C.行为型对象
D.结构型类
答案:A
Builder:抽象建造者,为创建一个Product对象各个部件指定抽象接
口,把产品的生产过程分解为不同的步骤,从而使具体建造者在具体
的建造步骤上具有更多弹性,从而创造出不同表示的产品。
ConcreteBuilder:具体建造者,实现Builder接口,构造和装配产品的
各个部件定义并明确它所创建的表示,提供一个返回这个产品的接
口。
Director:指挥者,构建一个使用Builder接口的对象。即对应本题
waiter。
Product:产品角色,被构建的复杂对象,具体产品建造者,创建该
产品的内部表示并定义它的装配过程。包含定义组成组件的类,包括
将这些组件装配成最终产品的接口。
47、A.当一个系统应该独立于它的产品创建、构成和表示时
B.当一个类希望由它的子类来指定它所创建的对象的时候
C.当要强调一系列相关的产品对象的设计以便进行联合使用时
D.当构造过程必须允许被构造的对象有不同的表示时
答案:D
适用场景(复杂对象构造)
当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装
配方式时。
弐拾八
当构造过程必须允许被构造的对象有不同的表示时。
48、函数foo()、hoo0定义如下,调用函数hoo()时,第-个参数采用
传值(callbyvalue)方式,第二个参数采用传引用(callbyreference)方
式。设有函数调(函数foo(5),那么"print(x)”执行后输出的值为()。
A.24
B.25
C.30
D.36
答案:A
根据题干描述的调用过程,hoo()第一个参数是传值调用,第二个参
数是引用调用,因此,在hoo()中对a的修改最终会影响到原foo()函
数中传递的参数x,也就是最终x打印的值。
根据hoo()函数过程,x初始传参为原args=5,此时x=x-1=4(注意这
里的x是局部变量,只在hoo()使用),a初始传参为原x=6,此时
a=a*x=6*4=24,最终全局变量x值为24。(注意这里的原x是全局变
量,在hoo()参数中可以理解为别名为a,现x是局部变量,也就是之
前求取的4)。
弐拾九
49、程序设计语言的大多数语法现象可以用CFG(上下文无关文法)
表示。下面的CFG产生式集用于描述简单算术表达式,其中+、-、*
表示加、减、乘运算,id表示单个字母表示的变量,那么符合该文法
的表达式为()。
P:E→E+T|E-T|T
T→T*F|F
F→F|id
A.a+-b-c
B.a*(b+c)
C.a*-b+2
D.-a/b+c
答案:A
这里没有终结符“(”、")"、"/"。
在推导的过程中,会发现"*"只能通过T推导,此时必定经过了E+T
或E-T,也就是说“+”或“-”必定在“*”前面。
只有A能够被推导,推导过程如下:
(1)通过E→E-T,从起始符E得到E-T;
(2)通过E→E+T,将上面的E展开为E+T,得到E+T-T;
(3)通过E→T→F→id→单个字母a;
(4)通过T→F→-F→-id→单个字母-b;
(5)通过T→F→id→单个字母c。
参拾
发布者:admin,转转请注明出处:http://www.yc00.com/web/1714764933a2511204.html
评论列表(0条)