2024软考-《软件设计师》-易混淆知识点总结(1~6章)

ops/2024/10/24 18:09:10/

一、计算机组成与体系结构

1.1、原码、反码、补码、移码的运算

原码:最高位表示符号位,其余低位表示数值的绝对值(0表示正数,1表示负数)

反码:正数的反码与原码相同,负数的反码是其绝对值按位取反(符号位不变)

补码:正数的补码与原码相同,负数的补码是其反码末位加1(符号位不变)

移码:补码的符号位按位取反

1.2、寻址方式的对比

立即寻址:操作数直接在指令中,灵活性差,但速度最快。

直接寻址:指令中存放的是操作数的地址。

间接寻址:指令中存放了一个地址,这个地址对应的内容是操作数的地址。

寄存器寻址:操作数存放在寄存器中,指令指定寄存器号。

寄存器间接寻址:寄存器中存放的是操作数的地址。

1.3、数据传输方式

程序查询方式:分为无条件传送和程序查询两种方式。方法简单硬件开销小,但I/O能力不高,严重影响CPU效率。

中断方式:因为CPU无需等待而提高了传输请求的响应速度。

DMA方式:效率比上述两种都高。

1.4、可靠性、可用性、可维护性

可靠性:MTTF/(1+MTTF)

可用性:MTBF/(1+MTBF)

可维护性:1/(1+MTTR)

1.5、CISC和RISC

二、操作系统

2.1、页式存储、段式存储、段页式存储

页式存储:将程序与内存均划分为同样大小的块,以页为单位将程序调入内存。

段式存储:按用户作业中的自然段来划分逻辑空间,然后调入内存,段的长度可以不一样。

段页式存储:段式与页式的综合体。先分段,再分页。1个程序有若干个段,每个段中可以有若干
页,每个页的大小相同,但每个段的大小不同。

三、程序设计语言

3.1、编译与解释

编译程序:也称编译器,将源程序翻译成目标语言程序,然后在计算机上运行目标语言程序。

解释程序:也称解释器,直接解释执行源程序,或者将源程序翻译成某种中间代码后再加以执行。

二者区别:编译方式生成目标程序,执行效率较高;解释程序不生成独立的目标程序,边解释边执行效率较低。

3.2、传值和传址

传值调用:形参取的是实参的值,形参的改变不会影响实参的值【单向】
传纸调用(引用调用):形参取的是实参的地址,形参的改变会影响实参的值【双向】

四、数据结构

4.1、顺序存储与链式存储

4.2、空串与空格串

空串:长度为0,不包含任何字符。

空格串:由一个或多个空格组成的串。计算长度时空格也要计算在内。

4.3、字串和子序列

子串:由串中任意长度的连续字符构成的序列称为子串。含有子串的串称为主串。子串在主串中的
位置是指子串首次出现时,该子串的第一个字符在主串中的位置。空串是任意串的子串。

子序列:一个串的“子序列”是将这个串中的一些字符提取出来得到一个新串,并且不改变它们的
相对位置关系。

子串要求连续,而子序列要求不改变相对位置即可,例如:ABC的子串为 AB,BC,而子序列可以为AC。

4.4、树的遍历

前序遍历:又称为先序遍历,按根→左→右的顺序进行遍历。

后序遍历:左→右→根的顺序进行遍历。

中序遍历:左→根→右的顺序进行遍历。

层次遍历:层次顺序进行遍历。

4.5、图的遍历—深度优先和广度优先

五、算法基础

5.1、各类排序算法对比

5.2、常见算法特征总结

六、系统开发基础

6.1、内聚性

偶然聚合:模块完成的动作之间没有任何关系,或者仅仅是一种非常松散的关系。

逻辑聚合:模块内部的各个组成在逻辑上具有相似的处理动作,但功能用途上彼此无关。

时间聚合:模块内部的各个组成部分所包含的处理动作必须在同一时间内执行

过程聚合:模块内部各个组成部分所要完成的动作虽然没有关系,但必须按特定的次序执行

通信聚合:模块的各个组成部分所完成的动作都使用了同一个数据或产生同一输出数据

顺序聚合:模块内部的各个部分,前一部分处理动作的最后输出是后一部分处理动作的输入

功能聚合:模块内部各个部分全部属于一个整体,并执行同一功能,且各部分对实现该功能都必不可少

6.2、耦合性

非直接耦合:两个模块之间没有直接关系,它们的联系完全是通过主模块的控制和调用来实现的。

数据耦合:两个模块彼此间通过数据参数交换信息。

标记耦合:一组模块通过参数表传递记录信息,这个记录是某一个数据结构的子结构,而不是简单变量。

控制耦合:两个模块彼此间传递的信息中有控制信息

外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息。

公共耦合:两个模块之间通过一个公共的数据区域传递信息。

内容耦合:一个模块需要涉及到另一个模块的内部信息

6.3、概要设计与详细设计

概要设计

设计软件系统总体结构:基本任务还是采用某种设计方法,将一个复杂的系统按功能划分成模块;
确定每个模块的功能确定模块之间的调用关系;确定模块之间的接口,即模块之间传递的信息;评价模块结构的质量

数据结构及数据库设计:在需求分析阶段对数据的组成、操作约束和数据之间的关系进行了描述,
概要设计阶段要加以细化,详细设计阶段则规定具体的实现细节。

编写概要设计文档:概要设计说明书、数据库设计说明书、用户手册以及修订测试计划。

评审:对设计部分是否完整地实现了需求中规定的功能、性能等要求,设计的可行性,关键的处理
以及外部接口定义的正确性、有效性、各部分之间的一致性等都一一进行评审。

详细设计

对每个模块进行详细的算法设计,用某种图形、表格和语言等工具将每个模块处理过程的详细算法
描述出来。

模块内的数据结构进行设计

数据库进行物理设计,即确定数据库的物理结构。

其他设计:根据软件系统的类型,还可能需要进行代码设计、输入/输出格式设计,用户界面设计等。

编写详细设计说明书

评审:对处理过程的算法和数据库的物理结构都要评审。

6.4、软件维护类型

更正性维护:针对真实存在并已经发生的错误进行的维护行为。【BUG】

预防性维护:针对真实存在但还未发生的错误进行的维护。

适应性维护:指使应用软件适应信息技术变化和管理需求变化而进行的修改。企业的外部市场环境
和管理需求的不断变化也使得各级管理人员不断提出新的信息需求。

完善性维护扩充功能改善性能而进行的修改。对已有的软件系统增加一些在系统分析和设计阶
段中没有规定的功能与性能特征。


http://www.ppmy.cn/ops/128119.html

相关文章

24.10.20(换根哈希)

星期一: 阴间场 cf渡劫成功,拿下三题,终于上蓝🥳🥳🥳 贴 cf round978 div2 C cf传送门 答案取到n1但初始化没到n1,wa了一发,很烦😿…

页面局部使用vue等框架其它部分用JQuery进行交互

这个需求是原有django在网页需要定制一个人员签到信息。状态有三种,在岗,下班。好吧两种。但是你想 1,1.这是两次、共四个可能,00, 10,01,11.其中00是在家。10是在岗。01是。不签到只签退&#…

华为CE交换机telnet登录失败故障的排查方法

检查网络状态 操作步骤 1、执行命令ping xxx.xxx.xxx.xxx(目的IP网段) 根据报文是否丢包确认是否可以访问该设备,网络不通请检查组网及网络地址、静态路由等相关配置。 检查VTY通道是否已占满? 操作步骤 1、在任意视图下,执行命令displ…

顺丰员工砸了京东广告牌获特殊贡献奖,京东:报警了

大家好,我是鸭鸭! 大家对商战的印象,在见过当当抢公章,开水浇发财树,评论区阴阳怪气等一系列真实商战后,已经对各大公司的“有病”行为有了一定的心理准备。 没想到,今天鸭鸭又看到了新的商战…

数据结构 | 第一章 | 线性表 | 静态和动态顺序表

静态顺序表和动态顺序表 一、基础知识 概念:线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使 用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串 线性表在逻辑上是…

【Golang】关于Gin框架请求参数的获取

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

简易CPU设计入门:验证取指令模块

项目代码下载 还是请大家首先准备好本项目所用的源代码。如果已经下载了,那就不用重复下载了。如果还没有下载,那么,请大家点击下方链接,来了解下载本项目的CPU源代码的方法。 下载本项目代码 准备好了项目源代码以后&#xff…

OpenBayes 一周速览|即刻体验Depth Pro,0.3秒get深度图;超高清视频生成模型上线,帧率高达24fps

公共资源速递 This Weekly Snapshots ! 5 个数据集: SynthText 自然场景图像数据集 Caltech-101 物体识别图像数据集 BSDS500 轮廓检测与语义分割数据集 PKU-Market-Phone 手机屏幕表面缺陷分割数据集 Berkeley Cable Routing 多阶段机器人电缆任务…