「软件设计师」 2023年上半年上午真题解析

「软件设计师」 2023年上半年上午真题解析

提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性

关于互联网大厂的笔试面试,都是需要细心准备的
(1)自己的科研经历,科研内容,学习的相关领域知识,要熟悉熟透了
(2)自己的实习经历,做了什么内容,学习的领域知识,要熟悉熟透了
(3)除了科研,实习之外,平时自己关注的前沿知识,也不要落下,仔细了解,面试官很在乎你是否喜欢追进新科技,跟进创新概念和技术
(4)准备数据结构与算法,有笔试的大厂,第一关就是手撕代码做算法题
面试中,实际上,你准备数据结构与算法时以备不时之需,有足够的信心面对面试官可能问的算法题,很多情况下你的科研经历和实习经历足够跟面试官聊了,就不需要考你算法了。但很多大厂就会面试问你算法题,因此不论为了笔试面试,数据结构与算法必须熟悉熟透了
秋招提前批好多大厂不考笔试,直接面试,能否免笔试去面试,那就看你简历实力有多强了。
(5)考网警的大佬,务必把软考:中级软件设计师的内容学好学透,学广,学多


文章目录

「软件设计师」 2023年上半年上午真题解析

在这里插入图片描述

DMA控制器和cpu发出的数据地址是?

cpu
高速缓存cache
主存
外存

DMA是外部设备管理,IO设备啥的,打印机等,发出的地址是主存的物理地址哦。
在这里插入图片描述
DMA搞打印机肯定跟你外面的硬盘无关的
硬盘就是外存,懂吧

信息位n,则校验码的位数k为:

在这里插入图片描述
这里和纠错几位没关系
你带入这个公式,验证C正确即可

最主要是记住那个公式
2的k次幂,大于等于n+k+1

知道n就可以带入k验证了

中断向量提供的是服务程序的入口地址——年年考

在这里插入图片描述
在这里插入图片描述

定点数用补码表示,表示错误的是?

正数:原码、反码、补码一样
负数:原码、反码是符号位不变,数值位取反,补码在反码的基础上+1【符号位也要参与运算哦】

0的补码是唯一的,不管+0还是-0都一样

减法自然转加法

符号位是可以参与运算的,不管的,这样补码才能搞出正负号来

在这里插入图片描述
负数的补码很复杂,与真值之间根本看不错来的

在这里插入图片描述
一点都不直观
补码求补码就是原码:负数
在这里插入图片描述
在这里插入图片描述
+0
-0
原码
在这里插入图片描述
反码的话,正数不管
看负数
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
±0的补码都是一个东西,都是0 00000000

减法变加法很简单

+2=0 0000 0010,原反补
-3=1 0000 0011原码,1 1111 1100反码,1 1111 1101补码
然后2-3=2+(-3)通过补码加
在这里插入图片描述

补码求补码,就是原码
在这里插入图片描述
这个就是我们的计算机补码计算了
美滋滋

指令流水线、取指令,分析指令,执行指令,耗时

在这里插入图片描述

这里最重要的记住,指令最后一条n执行完需要5s
而前面n-1条,需要执行多久呢?看三种操作中最长的一段时间,比如最长的就是分析指令,需要2s
那么就按照上面的方法计算就行了

这个方法必考

OSI参考模型的,应用层的压缩,加密的层是,表示吧,相当于y=f(x),机器学习中就是表征咯

5层的话
应用层【会话层、表示层、应用层7层】
传输层
网络层
数据链路层
物理层
在这里插入图片描述
57都一样
反正OK
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下层为上层提供服务
美滋滋

在这里插入图片描述

服务器的证书被撤销?那你浏览网页的话,该网站证书已过期/失效,那这么说
有一个三角形中间感叹号!
在这里插入图片描述

你是否信任这个网站?
如果你信任,继续访问
你要是不信任,那就返回安全网页

这个一般是黄色网站,他们的网站就这样

然后我们看第一问:会话秘钥是必然的
不可能是对方,本方的,而是会话的

加密是对称的好像,但是要用证书的公钥加密会话秘钥,否则可能会被窃取。
在这里插入图片描述
然后我们解析证书
在这里插入图片描述
在这里插入图片描述

证书公钥加密
是对称加密的方法
在这里插入图片描述

最后就可以安全搞到数据了

所以答案就是:会话秘钥+对称加密的方法

入侵防御系统,不正确的是

在这里插入图片描述
分析用户的活动那个
看看有没有攻击并阻断它

但是不是联动入侵检测系统

web应用防火墙无法有效防护

在这里插入图片描述
流氓软件是软件,不是web
在这里插入图片描述

abc都是web应用

著作权中,保护期限有限制是作者死亡后的五十年内,之后不管了就。

在这里插入图片描述
记一下33比开
左边仨都是有限制的
右边仨都是没有限制

计算机软件知识产权是有版权的

在这里插入图片描述
version版权

软件著作权叙述,不正确得是

在这里插入图片描述
正版软件——商用的话,是要付钱的
而学习和研究,可以靠学校啥的这种去学习,不需要交钱

但是继承权?怎么说,你爹的技术,你有本事继承????
难吧

所有权利很骚

鲁迅写的书,你子女能改为自己的名字吗
李白的诗歌,当然不是他子女能继承的
在这里插入图片描述

数据流图,不正确的2013年考了原题

在这里插入图片描述
细节不用管哦

y和x之间的加工f是要说清楚的,就是函数代码啥的
在这里插入图片描述

在这里插入图片描述
判定改为决策即可,都是加工规格说明方法
在这里插入图片描述

好的软件设计原则,不正确的是

在这里插入图片描述
当然是不能集中了,一堆很麻烦,模块我们需要独立摊开,这样开发很容易,否则gg

高内聚,低耦合

提高抽象层次

软件项目活动图,顶点是里程碑,边是活动,则里程碑 关键路径上,关键路径长度为:

年年考
在这里插入图片描述
关键路径就是耗时最长的那条
瓶颈==关键
就这意思

8位成员开发,有多少条沟通路径,据说是n(n-1)/2

在这里插入图片描述

布尔表达式,当,,,时可以进行短路,相当于or有一边是true,那整体都是短路的

在这里插入图片描述
整体不管or后面的东西了

正规式,正规集,基本就是选择,你只要选10,不可能有连续的1出现

在这里插入图片描述
()*括号中可以出现0–N次
|是选左边或右边

函数传值不改变变量,传引用是改变变量的

在这里插入图片描述

位示图,计算位示图大小

在这里插入图片描述
位示图的意思就是一个2进制位,表示一个物理块的使用情况

我们先看512g的容量包含多少块?
上面求出来是2的17次方块,所以需要这么多位

计算机系统的字长是64位

故,用来除一下,就需要这么多字来表示咯

这个计算方法要熟悉。

磁盘调度,移臂调度,旋转调度

在这里插入图片描述

先来先服务
在这里插入图片描述
在这里插入图片描述
这种就会改变方向,移动臂膀
懂吧?

所以AD有可能对

我们看最短寻道时间
谁离我最近,我就移动臂膀过去
比如我在50的地方,则处理下面的就可能随时改变方向

在这里插入图片描述
因此呢D对了

A的话,单向扫描,自然就是单项,不会改变方向咯
在这里插入图片描述

我们看看电梯调度:
电梯是是先从上往下,再从小网上,中间的只能单向玩
所以C不对的
在这里插入图片描述

多线程的操作系统,进程P构建了T1,2,3线程,13,154,20年都考过

在这里插入图片描述
进程中的线程是共享的:代码段、全局变量、文件
不可以共享的是栈指针
在这里插入图片描述
C错误

给进程前趋图标记信号量

在这里插入图片描述

标记S1-S8规则就是出发之后,看数字,从小到大去标
12 13
则标记12先
之后是13

第二步,进程P的入箭头,需要加P操作,进程P之后的出箭头,需要加V操作
在这里插入图片描述
所以这种题,很简单的,非常简单
在这里插入图片描述
这不就很简单了吗
easy

搞懂2个步骤就好了。;

增量模型

需求分析,拆分位增量?

在这里插入图片描述
相当于最开始搞一个demo
继续玩增量技术,就像微信,最开始就是聊天,后来视频号,朋友圈,支付,等等

在这里插入图片描述
一开始就是开发核心功能,后来加新的功能
导致后面系统要是再加别的东西,系统并不容易。

每个版本都需要考虑到之前的功能
否则会损伤前面的东西

gg
在这里插入图片描述

敏捷开发方法,迭代的一个冲刺

在这里插入图片描述
ABD各自特点
在这里插入图片描述
在这里插入图片描述

模块间的耦合

在这里插入图片描述
数据:数值传递
标记:数据结构
公共:公共环境下

在这里插入图片描述
在这里插入图片描述

可移植性设计的原则

在这里插入图片描述
A平台中软件x
想移植到B平台中

可移植性,就是看依赖A的库的程度
太大顶不住啊
在这里插入图片描述

在这里插入图片描述
B你A的特定环境,你能玩,B玩个锤子

所以B错误

架构风格

在这里插入图片描述
在这里插入图片描述

D没说交互的吧

在这里插入图片描述
软件工程考过的

测试用例,mcCabe

闭合区域数量+1就是复杂度

在这里插入图片描述
覆盖所有路径的测试用例
那你就一个个走呗
设置几个分支玩

当测试用例4绕过来之后怎么思考?
在这里插入图片描述
用例4只会转自己的圈,它不会去N,因为你之前走的是Y
所以就是4个测试用例就行了

软件的维护,特性

改正,是发现错误,改正错误,不是改善

预防性,防止出错

适应性,环境改变,需要改变自己
在这里插入图片描述
改善,更加好,友好
2017年的原题
2023又考了
在这里插入图片描述

面向对象开发,成绩管理系统,学生的各种属性需要封装,不同的类呢,对象之间通过啥通信呢?消息

在这里插入图片描述
发消息给另一个对象
在这里插入图片描述

面向对象,测试,定义的每个方法属于是什么层?

在这里插入图片描述

在这里插入图片描述

面向对象,重用类,就要重用包中的所有类

在这里插入图片描述
封闭:产生影响
开放:扩展开,修改封闭
分离:抽象,非具体
在这里插入图片描述

UML序列图

在这里插入图片描述

序列就是时序
2次循环,自然是abab然后c

UML包图,不正确的是

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
一个元素只能被一个包拥有

不是多个哦

原型模式,创建型

在这里插入图片描述
在这里插入图片描述

旅游公司开发软件系统,根据季节,不同服务,模式,意图

在这里插入图片描述
不同条件,不同策略,需要不同的算法

Python获取对象的类型,type

在这里插入图片描述
type就是类型
object是返回一个对象
str转化为str

Python定义元组:tuple(),()

括号抱起来的就是元组
在这里插入图片描述

数组,列表是大括号[]

不加括号也是元组???????
在这里插入图片描述
在这里插入图片描述

Python的while后可以加else?????Python没有Switch语句…………

在这里插入图片描述
爆炸
没有Switch语句
gg

不是Java和c++
在这里插入图片描述
在这里插入图片描述
牛逼了

数据库应用系统开发,视图,逻辑,

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

关系模式R(U,F),U是属性,F是U上的一组函数

在这里插入图片描述
自己反过来?
在这里插入图片描述

关系模式

在这里插入图片描述
AD是没有被谁决定的,所以一定是关键字,同时出现
在这里插入图片描述

关键字做合并,得到ABCD,直接全部包含在U中,是主属性,不在U中是非主属性

sql语言插入函数:insert on

在这里插入图片描述
for all所有,public所有?
D是虚视图
C允许用户他授予给他人
在这里插入图片描述
在这里插入图片描述

栈,对算数表达式,求,则栈的初始容量为

在这里插入图片描述

哈夫曼编码,以下编码方案中不可能的是

在这里插入图片描述
造哈夫曼编码
A
在这里插入图片描述
B
在这里插入图片描述
C好像不对劲

在这里插入图片描述

C对的,10是对的

D不对
在这里插入图片描述

有向图的邻接表BFS复杂度o(n+e)

在这里插入图片描述
在这里插入图片描述
这种方阵,遍历需要n方

邻接矩阵的话,就是

二分查找

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
C显然不对啊,因为你找来找去,61你觉得小了,怎么可能是42

树构成的森林,节点n1,n2,n3.酱森林转换为二叉树,则二叉树的右子树包含介个节点??

在这里插入图片描述在这里插入图片描述
2当做1的右子树,然后把3当做2的右子树
懂?
在这里插入图片描述
就出来了

美滋滋

排序,复杂度o(nlogn),稳定排序,则,如果只需要在原数据上进行,空间复杂度为o(1),则用

10打排序算法
在这里插入图片描述
堆排序不需要空间,sum是有限的

快排好像也需要空间

kruskal算法生成最小生成树,策略是贪心算法,最小生成树的权值为

无环n-1条遍,且权值最小。
k算法是按最小的权值连各个区域,最后连在一起,贪心呗

在这里插入图片描述

www的控制协议

在这里插入图片描述
在这里插入图片描述

Linux系统中通常使用 作为web服务器,默认目录是

在这里插入图片描述
在这里插入图片描述
站点目录就是home
反正etc是配置
log是日志

这样就是home了

SNMP的传输协议是

在这里插入图片描述
TCP是可靠面向连接的协议
UDP是不可靠的非连接的协议

SNMP网络管理协议?指简单网络管理协议。不需要可靠连接

IP是Internet协议
ICMP控制消息协议【网络层】
在这里插入图片描述

网页无法打开,但是聊天软件OK

在这里插入图片描述

IP,网卡,链路都OK,因为软件聊天都OK

所以打开网页,需要解析域名,DNS干失败了,你就打不开网页咯
在这里插入图片描述


总结

提示:重要经验:

1)
2)
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/177460.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

8. 一文快速学懂常用工具——Linux命令(上)

本章讲解知识点 引言 指令学习 本专栏适合于软件开发刚入职的学生或人士,有一定的编程基础,帮助大家快速掌握工作中必会的工具和指令。本专栏针对面试题答案进行了优化,尽量做到好记、言简意赅。如专栏内容有错漏,欢迎在评论区指…

Debug技巧-不启用前端访问后端

在日常开发中,我们经常会遇到各种问题需要调试,前后端都启动需要耗费一定的时间和内存,方便起见,可以直接用抓包数据访问后端,这里我们需要用到Postman或者ApiFox 抓包数据 在系统前台触发后端请求,在控制…

MyBatis入门

MyBatis是一款优秀的持久层框架,用于简化JDBC开发 持久层: 负责将数据保存到数据库的那一层代码 我们会将操作数据库的Java代码作为持久层,而MyBatis就是对jdbc代码进行了封装。 JavaEE三层架构:表现层、业务层、持久层 框架&…

mysql之索引

一、索引的概念 1、索引:是一个排序的列表,列表当中存储的是索引的值和包含之值的数据所在行的物理地址 2、主要作用:快速查找,加快查询速度 3、索引的缺点:索引也占用额外的磁盘 (1)innodb…

Stable Diffusion WebUI扩展openpose-editor如何使用

先上地址: GitHub - fkunn1326/openpose-editor: Openpose Editor for AUTOMATIC1111s stable-diffusion-webuiOpenpose Editor for AUTOMATIC1111s stable-diffusion-webui - GitHub - fkunn1326/openpose-editor: Openpose Editor for AUTOMATIC1111s stable-diffusion-webu…

[SpringCloud | Linux] CentOS7 部署 SpringCloud 微服务

目录 一、环境准备 1、工具准备 2、虚拟机环境 3、Docker 环境 二、项目准备 1、配置各个模块(微服务)的 Dockerfile 2、配置 docker-compose.yml 文件 3、Maven 打包 4、文件整合并传输 三、微服务部署 1、部署至 Docker 2、访问微服务 四…

nacos在linux中的安装、集群的配置、mysql生产配置

1.下载和安装 官方下载地址:https://github.com/alibaba/nacos/releases,根据自己需要的本版去下载就行 下载的是 .tar.gz 后缀的文件是linux版本的 使用tar命令解压,完成之后是一个nacos的文件夹 和windows下的文件夹目录是一样的 要启…

MICCAI2023论文多模态论文速读-1

文章目录 1.Attentive Deep Canonical Correlation Analysis for Diagnosing Alzheimer’s Disease Using Multimodal Imaging Genetics2.Bidirectional Mapping with Contrastive Learning on Multimodal Neuroimaging Data3.CoLa-Diff: Conditional Latent Diffusion Model f…

【算法练习Day35】01背包问题分割等和子集

​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:练题 🎯长路漫漫浩浩,万事皆有期待 文章目录 01背包问题分割等和子集总结…

Proteus仿真--基于51单片机的按键控制LED仿真(仿真文件+程序)

本文主要介绍基于51单片机的按键控制LED仿真(完整仿真源文件及代码见文末链接) 本仿真文件主要涉及4个按键,其中: K1按键的逻辑是——逐个点亮 K2按键的逻辑是——上四个点亮 K3按键的逻辑是——下四个点亮 K4按键的逻辑是——关…

HarmonyOS鸿蒙原生应用开发设计- 元服务(原子化服务)图标

HarmonyOS设计文档中,为大家提供了独特的元服务图标,开发者可以根据需要直接引用。 开发者直接使用官方提供的元服务图标内容,既可以符合HarmonyOS原生应用的开发上架运营规范,又可以防止使用别人的元服务图标侵权意外情况等&…

Http代理与socks5代理有何区别?如何选择?(一)

了解SOCKS和HTTP代理之间的区别对于优化您的在线活动至关重要,无论您是技术娴熟的个人、现代互联网用户还是企业所有者。在使用代理IP时,您需要先了解这两种协议之间的不同。 一、了解HTTP代理 HTTP(超文本传输协议)代理专门设计…

【Java 进阶篇】Java中的响应输出字节数据

在Java Web应用程序开发中,处理响应是一个常见的任务。有时,您可能需要向客户端发送字节数据,而不仅仅是文本或HTML内容。这可以用于传输各种内容,如图像、文件、视频等。本文将详细介绍如何在Java中使用Response对象输出字节数据…

在 Typescript 项目中使用 cdn 加载的js插件没有类型声明

先上一段同事写得代码, 此处动态的插入了 MathJax 这个 js 插件, 我不知道为什么如此编写, //ts-ignore 此处不知道为什么如此调用, 只能使用 ts-ignore 忽略dynamicLoadingJs("//xxx.com/latex/MathJax.js?configTeX-AMS_HTML", () > {MathJax.Hub.Config({exte…

[Docker]四.Docker部署nodejs项目,部署Mysql,部署Redis,部署Mongodb

一.部署nodejs项目,映射端口,挂载数据卷 可以到https://hub.docker.com/去搜索node镜像,然后下载,也可以直接通过docker pull node下载镜像,然后用这个node镜像启动容器node,这样系统就集成了node服务了,在这里挂载www/node目录到容器中,并指定端口映射,运行nodejs程序,安装npm…

【机器学习合集】模型设计之残差网络 ->(个人学习记录笔记)

文章目录 模型设计之残差网络1. 什么是残差结构1.1 网络加深遇到的优化问题1.2 short connect技术 2. 残差网络及有效性理解2.1 残差网络 3. 残差网络的发展3.1 密集残差网络3.2 更宽的残差网络(wide resnet)3.3 分组残差网络3.4 Dual Path Network3.5 加权残差网络3.6 预激活残…

CSS3网页布局基础

CSS布局始于第2个版本,CSS 2.1把布局分为3种模型:常规流、浮动、绝对定位。CSS 3推出更多布局方案:多列布局、弹性盒、模板层、网格定位、网格层、浮动盒等。本章重点介绍CSS 2.1标准的3种布局模型,它们获得所有浏览器的全面、一致…

HTML表格

HTML表格&#xff1a; HTML表格是由<table>标签来定义。HTML表格式一种用于结构化数据的标记语言元素。每个表格均有若干行&#xff08;由<tr>B标签定义&#xff09;&#xff0c;每行被分割为做干列&#xff08;由<td>标签定义&#xff09;。表格可以包含标…

第22期 | GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区&#xff0c;集成了生成预训练 Transformer&#xff08;GPT&#xff09;、人工智能生成内容&#xff08;AIGC&#xff09;以及大型语言模型&#xff08;LLM&#xff09;等安全领域应用的知识。在这里&#xff0c;您可以…

Java架构师知识产权与标准化

目录 1 导学2 知识产权概述3 保护期限4 知识产权人的确定4 侵权判断5 标准划分想学习架构师构建流程请跳转:Java架构师系统架构设计 1 导学 2 知识产权概述 知识产权是指公民、法人、非法人单位对自己的创造性智力成果和其他科技成果依法享有的民事权。是智力成果的创造人依…