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

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

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】

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

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

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于ESP32的RGB便携式视频灯

基于ESP32的RGB便携式视频灯 拥有一套能够满足个人需求的灯光设备至关重要。市面上的RGB视频灯虽然功能强大,但往往价格不菲。我制作的这款灯是20W RGB便携式视频灯不仅满足了我的需求,而且成本仅为市售产品的三分之一。接下来,我将详细介绍这…

大模型开发实战1-QuickStart

0. 关于大模型和模型选择 由于OpenAI的ChatGPT流行,AI技术在大模型技术的赋能下高速发展,特别是2023年至今,国内的AI技术发展更是前所未有的景象,各大公司争相发布自己的大模型,包括百度文心一言,阿里同义…

正版CST电磁仿真软件:保障创新与合规的基石

在当今快速发展的科技时代,电磁仿真技术对于电子产品的设计、测试和优化至关重要。CST电磁仿真软件以其强大的功能和广泛的应用领域,成为众多企业和研究机构不可或缺的工具。然而,在选择使用CST软件时,确保使用正版软件不仅是对知…

【C++】红黑树的底层原理以及实现

#1024程序员节 | 征文# 个人主页:夜晚中的人海 文章目录 ⭐前言🚆一、红黑树的概念🏠二、红黑树的规则🎄三、红黑树的效率🎡四、红黑树的实现1. 基本框架2. 插入操作• 变色• 单旋 变色• 双旋 变色 3. 查找操作4. …

玄机平台-应急响应-webshell查杀

首先xshell连接 然后进入/var/www/html目录中,将文件变成压缩包 cd /var/www/html tar -czvf web.tar.gz ./* 开启一个http.server服务,将文件下载到本地 python3 -m http.server 放在D盾中检测 基本可以确认木马文件就是这四个 /var/www/html/shell.p…

高效实现聚水潭数据集成MySQL的技术案例

聚水潭奇门数据集成到MySQL的技术案例分享 在现代企业的数据管理中,如何高效、准确地实现不同系统之间的数据对接是一个关键问题。本文将聚焦于一个实际的系统对接集成案例:将聚水潭奇门平台的售后单数据集成到MySQL数据库中,具体方案名称为…

JVM—类的生命周期

目录 类的生命周期 加载阶段 连接阶段 验证阶段 准备阶段 解析阶段 初始化阶段 面试题1 面试题2 类的生命周期 类的生命周期描述了一个类加载、使用、卸载的整个过程,整体可以分为以下五个阶段。 1. 加载 2. 连接,其中又分为验证、准备、解析三…

Python学习的自我理解和想法(21)

学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码! 今天是学Python的第21天,学的内容是文件的操作。开学了,时间不多,写得不多,见谅。 目录 1.文件 (1).参数…

Tcp_Sever(线程池版本的 TCP 服务器)

Tcp_Sever(线程池版本的 TCP 服务器) 前言1. 功能介绍及展示1.1 服务端连接1.2 客户端连接(可多个用户同时在线连接服务端)1.3 功能服务1.3.1 defaultService(默认服务)1.3.2 transform(大小写转…

Rust与Javascript的使用对比

一、常量 RustJavascriptletconst 二、变量 RustJavascriptlet mutlet / var 三、常用打印 RustJavascriptprintln!(“换行”);console.log(‘hello’);print!(“不换行”);console.info(‘信息’);-console.error(‘错误’);-console.warn(‘警告’); 四、定义字符串 R…

开放式耳机哪个品牌音质好?高评分爆款开放式耳机推荐!

一直活跃在蓝牙耳机圈子里的我,对各种类型的耳机多少都有自己的看法,完全可以说是个耳机狂热者。近几年,开放式蓝牙耳机愈发火爆。开放式耳机不是任何品牌都能轻松做好的产品,特别是音质,它涵盖了核心单元技术等诸多方…

负载均衡服务器攻击怎么解决最有效?

负载均衡服务器攻击怎么解决最有效?常见的有效解决方法包括:使用SYNCookie机制、限制ICMP包速率、基于源IP的连接速率限制、检测并丢弃异常IP包、配置访问控制列表(ACL)、设置虚拟服务器/服务器连接数量限制、设置HTTP并发请求限制…

ABAQUS应用11——支座弹簧

文章目录 0、背景1、ABAQUS中几类弹簧的简介2、SPRING1的性质初探 0、背景 1、ABAQUS中几类弹簧的简介 先说参考来源,ABAQUS2016的帮助文档里第4卷,32.1.1节,有三种弹簧(SPRING1 、SPRING2 以及SPRINGA)。 三种弹簧里…

C for Graphic:视差渲染(一)

记录一下最近优化场景的做法:视差渲染 原理:通过视口坐标的变化,观察不同采样画面的功能,画面的载体为低模平面 我早期工作,在小作坊全栈的时候,做过一段时间web开发,做了一个古董藏…

【传知代码】机器学习在情绪预测中的应用(论文复现)

在科技迅猛发展的今天,我们不仅在追求更强大的计算能力和更高的精度,还希望我们的机器能够理解和回应我们复杂的情感世界。设想一下,当你面对挫折时,设备不仅能识别你的情绪,还能以一种富有同情心和洞察力的方式作出反…

开放式耳机哪个牌子好?开放式蓝牙耳机排行榜分享

​耳机已经成为我们日常生活中的必需品,但长时间佩戴传统入耳式耳机可能会导致耳朵不适,甚至影响健康。为了应对这一挑战,开放式耳机应运而生。这类耳机不侵入耳道,有效减轻了耳朵的压力,同时减少了感染风险&#xff0…

fmql之Linux中I2C总线框架

正点原子第44章 I2C zynq I2C pcf8563芯片 我们用的是ds3231. Linux I2C总线框架 I2C总线驱动 这部分内容是半导体厂商编写的。 I2C总线设备 zynq I2C适配器驱动 I2C设备驱动编写 使用设备树 代码编写 设备树修改 设备驱动编写 因为用的是ds3231,所以先找…

使用 PyTorch 构建 LSTM 股票价格预测模型

目录 引言准备工作1. 训练模型(train.py)2. 模型定义(model.py)3. 测试模型和可视化(test.py)使用说明模型调整结论 引言 在金融领域,股票价格预测是一个重要且具有挑战性的任务。随着深度学习…

1024软件推荐-rubick

开源的插件化桌面端效率工具箱。插件是基于 npm 进行安装和卸载,非常轻便。插件数据支持 webdav 多端同步,非常安全。支持内网部署,可二次定制化开发,非常灵活。 前言 rubick 之前的插件管理,依托于云服务器存储&…

滴水逆向三期笔记与作业——02C语言——13 指针(3)(4)

滴水逆向三期笔记与作业——02C语言——13 指针3、4 一、模拟实现CE的数据搜索功能 OneNote迁移 一、模拟实现CE的数据搜索功能 //其中有0xAA,超过有符号char范围,在vscode中会报错,所以使用unsigned char unsigned char data[100] {0x00,0…