软考 中级软件设计师 考点笔记总结 day01
文章目录
- 软考1.0
- 上午考点
- 下午考点
- 软考1.1
- 1、数值及其转换
- 2、计算机内数据表示
- 2.1、定点数 - 浮点数
- 2.2、奇偶校验 和 循环冗余校验 (了解)
- 2.3、海明码 (掌握)
- 2.4、机器数
软考1.0
上午考点
软件工程基础知识: 开发模型、设计原则、测试方法、质量特性、CMM、Pert图、风险管理
面向对象:面向对象基本概念、面向对象分析与设计、UML、设计模式
数据结构与算法:数组、栈、队列、树与二叉树、图、查找与排序、常见算法
程序设计语言:文法、有限自动机、正规式、语句作用、语句语义、程序控制结构、函数调用的参数传递、各种程序语言的特点比较
计算机硬件基础:浮点数运算、溢出、算术、逻辑运算、计算机体系结构分类、指令系统基础、CISC与RISC、流水线、Cache存储器可靠性分析、校验方法
操作系统:进程状态转换图、信号量与PV操作、死锁问题、银行家算法、段页式存储、页面置换算法、磁盘调度、树形文件系统
数据库系统:E-R模型、关系代数、元组演算、规范化理论(键、范式、模式分解)、并发控制
计算机网络:OSI模型、TCP/IP协议族、子网划分、常用网络命令
信息安全知识:加密解密技术、网络安全、计算机病毒
多媒体基础:多媒体基本概念、计算声音、图像、视频文件容量、JPEG、MPEG
知识产权与标准化:作品保护时间、侵权判定、知识产权归属、标准分类、标准代号
下午考点
数据流图:补充数据流图缺失部分(补充数据流、补充外部实体、补充数据存储),数据流图改错(包括修正数据流名称、数据流的起点与终点、删除多余数据流),与数据流图的相关概念简答题
数据库设计:E-R模型、关系模式、主键、外键、SQL语言
UML建模:用例图、类图与对象图、顺序图、活动图、状态图
C语言算法:链表、栈、二叉树、图基本操作的程序实现、动态规划法、分治法、回溯法、递归法、贪心法
Java语言程序设计:Java语法 + 设计模式
软考1.1
1、数值及其转换
二进制、十进制、和十六进制等常用数制及其相互转换
2、计算机内数据的表示
数的表示 (原码、反码、补码、移码表示) 整数和实数的机内表示,精度和溢出
非数值表示(字符和汉字表示、声音表示、图像表示)
校验方法和校验码(奇偶校验码、海明校验码、循环冗余校验码)
3、算术运算和逻辑运算
计算机中的二进制数运算方法
逻辑代数的基本运算
4、其他数学基础知识
5、计算机系统的组成、体系结构的分类及特性
CPU和存储器的组成、性能和基本工作原理
常用I/O设备、通信设备的性能以及基本工作原理
I/O接口的功能、类型和特性
I/O控制方式(中断系统、DMA、I/O处理机方式)
CISC/RISC、流水线操作、多处理机、并行处理
6、存储系统
主存-Cache存储系统的工作原理
虚拟存储器的基本工作原理、多级存储体系
RAID的类型和特性
7、可靠性与系统性能评测的基础知识
诊断和容错
系统可靠性分析评价
计算机系统性能评测方式
1数值及其转换 2 计算机内部数据表示 3 计算机系统组成 4 指令系统 5 输入输出技术 6存储系统
7总线系统 8 磁盘阵列技术 9 计算机可靠性
1、数值及其转换
(十进制 —>任意进制)
十进制
KnKn-1...K2K1K0K-1K-2...K-m = Kn * 10^n + Kn-1 * 10^(n-1) + ... + K2 * 10^2 + K1 * 10^1 + K0 * 10^0 + K-1 * 10^(-1) + K-2 * 10^(-2) + ... + K-m * 10^(-m)345.67 = 3 * 10^2 + 4 * 10^1 + 5 * 10^0 + 6 * 10^(-1) + 7 * 10^(-2)
R进制
KnKn-1...K1K0K-1...K-m = Kn * R^n + Kn-1 * R^(n-1) + ... + K1 * R^1 + K0 * R^0 + K-1 * R^(-1) + K-2 * R^(-2) + ... + K-m * R^(-m)
1.1(十进制)1*2 ^0 + 1 *2 ^-1 = 1.5(二进制)
二进制 10010010.110 = 1 * 2^7 + 0 * 2^6 + 0 * 2^5 + 1 * 2^4 + 0 * 2^3 + 0 * 2^2 + 1 * 2^1 + 0 * 2^0 +1 * 2^(-1) + 1 * 2^(-2)
- 0 * 2^(-3) = 146.75
八进制 5.4 (十进制)5 * 8 ^ 0 + 4 * 8 ^ -1 = 5.5
十进制转二进制 使用短除法 比如 94 转为二进制数
94 转为二进制 1011110
十六进制(Hexadecimal)是一种基数为16的数系统,使用0-9和A-F表示数值。
二进制 和 十六进制之间的转换
二进制 转为十六进制 4位一组 每组转为对应的十六进制符号 (最后一位标识符)
0011 1100 0010.0110 1B (以小数点前4位 后4位开始划分)
3 C 2 . 6 8
十六进制转为二进制
AE86.1H
1010 1100 1000 0010. 0001
二进制简写是B,八进制简写是O,十进制简写是D,十六进制的简写是H。
B,Binary(二进制);O,Octal(八进制);D,Decimal(十进制);H,Hex(十六进制)
2、计算机内数据表示
2.1、定点数 - 浮点数
定点数 小数点位置固定不变的数 (定点整数 定点小数)
浮点数是小数点位置不固定的数 能表示更大范围的数
浮点数组成 阶符 码阶 数符 尾数
N= M * R ^ E M 尾数 R 基数 E 阶码 阶码决定 数值范围 尾数 决定数值精度
2.2、奇偶校验 和 循环冗余校验 (了解)
奇偶校验 通过在编码中增加一位校验位使得编码中 1的个数位奇数 (奇校验)或者为偶数 (偶校验) 从而使码距变为2
对于奇校验 它可以检测代码中奇数位出错的编码 但不能发现偶数位出错的情况 当合法编码中奇数位发生错误 就是编码中 1变成0
或 0 变成1 则该编码中1的个数的奇偶性就发生了变化 可以发现错误 但不能纠错
循环冗余校验码 (CRC)广泛应用于数据通信和磁介质存储系统中。生成多项式 为 K个数据位产生 r个校验位来进行编码
编码长度为 k + r 可以发现错误 但不能纠错
2.3、海明码 (掌握)
在数据间插入 K 个校验码 通过 扩大码距来实现检错和纠错
数据位是n位 校验位是 k位 海明码纠错 则 n 和 k必须满足以下关系 2 ^ k - 1 >= n + k
2.4、机器数
机器数 (无符号数 :零和正数 有符号数:表示包括负数在内的所有整数 原码 反码 补码 移码)零和 正数没有符号位
无符号数在达到最大值后会发生溢出,例如8位无符号数的最大值为255(11111111),如果再加1则会变成0(00000000)。
原码是一种直接表示数值的方法,其中最高位用来表示符号(0表示正数,1表示负数),其余位表示数值部分。
+5 的原码是 0101 -5 的原码是 1101 表示范围 -(2^n - 1)到 2 ^n -1 存在双零问题
反码是通过对原码中的每一位取反(0变1,1变0)来表示负数的一种方法。
+5 反码 1010 -5 反码 0010 表示范围 -(2^n - 1)到 2 ^n -1 存在双零问题
补码 先求该数的反码。再对反码加1。考虑进位
+5 补码 1011 -5补码 0011 表示范围 - 2^n 到 2^n - 1 不存在双零问题
移码 补码基础上 符号位取反 只能表示整数
+5 移码 0011 -5移码 1011 表示范围 - 2^n 到 2^n - 1 不存在双零问题
相关文章:

软考 中级软件设计师 考点笔记总结 day01
文章目录 软考1.0上午考点下午考点 软考1.11、数值及其转换2、计算机内数据表示2.1、定点数 - 浮点数2.2、奇偶校验 和 循环冗余校验 (了解)2.3、海明码 (掌握)2.4、机器数 软考1.0 上午考点 软件工程基础知识: 开发模型、设计原则、测试方…...

K8s控制器Deployment详解
回顾 ReplicaSet 控制器,该控制器是用来维护集群中运行的 Pod 数量的,但是往往在实际操作的时候,我们反而不会去直接使用 RS,而是会使用更上层的控制器,比如说 Deployment。 Deployment 一个非常重要的功能就是实现了 Pod 的滚动…...

【微知】Centos如何迁移到Anolis系统的失败记录?(yum -y install centos2anolis、centos2anolis.py)
背景 本文记录如何从centos 8迁移到anolis系统。 详细步骤 下载迁移repo wget https://mirrors.openanolis.cn/anolis/migration/anolis-migration.repo -O /etc/yum.repos.d/anolis-migration.repo下载centos2anolis工具包 yum -y install centos2anolis安装额外工具包 …...

在 macOS 上使用 CLion 进行 Google Test 单元测试
介绍 Google Test(GTest)是 Google 开源的 C 单元测试框架,它提供了简单易用的断言、测试夹具(Fixtures)和测试运行机制,使 C 开发者能够编写高效的单元测试。 本博客将介绍如何在 macOS 上使用 CLion 配…...

Python SQLite3 保姆级教程:从零开始学数据库操作
Python SQLite3 保姆级教程:从零开始学数据库操作 本文适合纯新手!无需任何数据库基础,跟着步骤操作即可掌握 SQLite3 的核心用法。 目标:让你像用记事本一样轻松操作数据库! 目录 什么是 SQLite3?环境准…...

深度解析:视频软编码与硬编码的优劣对比
视频编码 一、基本原理与核心技术 压缩原理 通过时空冗余消除实现数据压缩: 空间冗余:利用帧内预测(如DC/角度预测)消除单帧内相邻像素相似性。时间冗余:运动估计与补偿技术(ME/MC)减少连续帧间…...

Azure云生态系统详解:核心服务、混合架构与云原生概念
核心服务:深入掌握Azure SQL Database、Azure Database for PostgreSQL、Azure Database for MySQL的架构、备份恢复、高可用性配置(如Geo-Replication、自动故障转移组、异地冗余备份)。混合架构:熟悉Azure Arc(管理混…...

人工智能之数学基础:正交矩阵
本文重点 正交矩阵是线性代数中一个重要的特殊矩阵,它在许多领域都有广泛的应用。 什么是正交矩阵 如图所示,当矩阵A满足如上所示的条件的时候,此时我们就可以认为是正交矩阵,需要注意一点矩阵A必为方阵。 正交矩阵的充要条件 …...

分布式锁—7.Curator的分布式锁
大纲 1.Curator的可重入锁的源码 2.Curator的非可重入锁的源码 3.Curator的可重入读写锁的源码 4.Curator的MultiLock源码 5.Curator的Semaphore源码 1.Curator的可重入锁的源码 (1)InterProcessMutex获取分布式锁 (2)InterProcessMutex的初始化 (3)InterProcessMutex.…...

【笔记】STM32L4系列使用RT-Thread Studio电源管理组件(PM框架)实现低功耗
硬件平台:STM32L431RCT6 RT-Thread版本:4.1.0 目录 一.新建工程 二.配置工程 编辑 三.移植pm驱动 四.配置cubeMX 五.修改驱动文件,干掉报错 六.增加用户低功耗逻辑 1.设置唤醒方式 2.设置睡眠时以及唤醒后动作 编辑 3.增加测试命…...

C++什么是深复制和浅复制,构造函数和析构函数,哪一个可以写成虚函数,为什么?
在C之中深复制是指对于值类型复制它的值,对于指针类型不仅仅复制指针指向的值,还会重新分配一个内存空间用于放置复制的值(对动态分配的内存进行重新分配和内存复制),这种深复制不会出现悬空指针的问题,但是…...

从连接到交互:SDN 架构下 OpenFlow 协议的流程与报文剖析
在SDN架构中,交换机与控制器之间的通信基于 OpenFlow协议,其设计目的是实现控制平面与数据平面的解耦。以下是 交换机连接控制器 和 数据包进入交换机触发交互 的详细流程及协议报文分析: 一、交换机连接控制器的流程(初始化阶段&…...

第七课:Python反爬攻防战:Headers/IP代理与验证码
在爬虫开发过程中,反爬虫机制成为了我们必须面对的挑战。本文将深入探讨Python爬虫中常见的反爬机制,并详细解析如何通过随机User-Agent生成、代理IP池搭建以及验证码识别来应对这些反爬策略。文章将包含完整的示例代码,帮助读者更好地理解和…...

Golang学习笔记_47——访问者模式
Golang学习笔记_44——命令模式 Golang学习笔记_45——备忘录模式 Golang学习笔记_46——状态模式 文章目录 一、核心概念1. 定义2. 解决的问题3. 核心角色4. 类图 二、特点分析三、适用场景1. 编译器实现2. 财务系统3. UI组件系统 四、Go语言实现示例完整实现代码执行结果 五、…...

软件高级架构师 - 软件工程
补充中 测试 测试类型 静态测试 动态测试 测试阶段 单元测试中,包含性能测试,如下: 集成测试中,包含以下: 维护 遗留系统处置 高水平低价值:采取集成 对于这类系统,采取 集成 的方式&…...

IDEA 基础配置: maven配置 | 服务窗口配置
文章目录 IDEA版本与MAVEN版本对应关系maven配置镜像源插件idea打开服务工具窗口IDEA中的一些常见问题及其解决方案IDEA版本与MAVEN版本对应关系 查找发布时间在IDEA版本之前的dea2021可以使用maven3.8以及以前的版本 比如我是idea2021.2.2 ,需要将 maven 退到 apache-maven-3.…...

Qt之QGraphicsView图像操作
QGraphicsView图像操作:旋转、放大、缩小、移动、图层切换 1 摘要 GraphicsView框架结构主要包含三个主要的类QGraphicsScene(场景)、QGraphicsView(视图)、QGraphicsItem(图元)。QGraphicsScene本身不可见,是一个存储图元的容器,必须通过与之相连的QGraphicsView视图来显…...

人工智能之数学基础:对线性代数中逆矩阵的思考?
本文重点 逆矩阵是线性代数中的一个重要概念,它在线性方程组、矩阵方程、动态系统、密码学、经济学和金融学以及计算机图形学等领域都有广泛的应用。通过了解逆矩阵的定义、性质、计算方法和应用,我们可以更好地理解和应用线性代数知识,解决各种实际问题。 关于逆矩阵的思…...

嵌入式开发之串行数据处理
前题 前面几篇文章写了关于嵌入式软件开发时,关于串行数据处理的一些相关内容,有兴趣的可以看看《嵌入式开发:软件架构、驱动开发与串行数据处理》、《嵌入式软件开发之生产关系模型》和《嵌入式开发之Modbus-RTU协议解析》相关的内容。从业十…...

机器学习(六)
一,决策树: 简介: 决策树是一种通过构建类似树状的结构(颠倒的树),从根节点开始逐步对数据进行划分,最终在叶子节点做出预测结果的模型。 结构组成: 根节点:初始的数据集…...

结合unittest和pytest进行虚拟数据库测试
使用 pytest 和 MagicMock 模拟数据库操作,并测试假设的 create_user 函数,将用户添加到数据库中。 代码实现 from datetime import date from typing import List, Optional from unittest.mock import MagicMock from pydantic import BaseModel, Fi…...

Spring Boot 监听器(Listeners)详细教程
Spring Boot 监听器(Listeners)详细教程 目录 Spring Boot 监听器概述监听器核心概念最佳使用场景实现步骤高级配置详细使用场景总结 1. Spring Boot 监听器概述 Spring Boot 监听器(Listeners)基于 Spring Framework 的事件机制…...

工具介绍《githack》以及Git 命令行
一、Githack 工具介绍 Githack 是一个用于检测和利用网站 .git 目录泄露漏洞的安全工具。当网站错误配置导致 .git 目录可公开访问时,攻击者可通过该工具下载 .git 中的版本控制文件,并重建完整的项目源代码。 核心用途 检测 .git 目录泄露漏洞。从泄…...

【hello git】git rebase、git merge、git stash、git cherry-pick
目录 一、git merge:保留了原有分支的提交结构 二、git rebase:提交分支更加整洁 三、git stash 四、git cherry-pick 共同点:将 一个分支的提交 合并到 到另一个上分支上去 一、git merge:保留了原有分支的提交结构 现有一个模型…...

MR的环形缓冲区(底层)
MapReduce的大致流程: 1、HDFS读取数据; 2、按照规则进行分片,形成若干个spilt; 3、进行Map 4、打上分区标签(patition) 5、数据入环形缓冲区(KVbuffer) 6、原地排序ÿ…...

下载Hugging Face模型的几种方式
1.网页下载 直接访问Hugging Face模型页面,点击“File and versions”选项卡,选择所需的文件进行下载。 2.使用huggingface-cli 首先,安装huggingface_hub: pip install huggingface_hub 然后,使用以下命令下载模型࿱…...

Java 第十一章 GUI编程(2)
目录 GUI 事件处理 基本思路 添加事件监听器 对话框 实例 GUI 事件处理 对于采用了图形用户界面的程序来说,事件控制是非常重要的;到目前为止, 我们编写的图形用户界面程序都仅仅只是完成了界面,而没有任何实际的功能&…...

Redis数据结构深度解析:从String到Stream的奇幻之旅(一)
Redis系列文章 《半小时掌握Redis核心操作:从零开始的实战指南》-CSDN博客 Redis数据结构深度解析:从String到Stream的奇幻之旅(一)-CSDN博客 Redis数据结构深度解析:从String到Stream的奇幻之旅(二&…...

7V 至 30V 的超宽 VIN 输入范围,转换效率高达 96%的WD5030
WD5030 具备 7V 至 30V 的超宽 VIN 输入范围,这一特性使其能够适应多种不同电压等级的供电环境,无论是在工业设备中常见的较高电压输入,还是在一些便携式设备经过初步升压后的电压,WD5030 都能轻松应对,极大地拓展了应…...

【Git原理与使用一】Git概念与基本操作
文章目录 1. Git 的概念2. Git 的安装3. Git 的认识3.1 创建本地仓库3.2 配置Git3.3 认识工作区、暂存区、版本库 4. Git 的基本操作4.1、认识几个指令1)git add 添加命令2)git commit 提交命令3)git log 查看日志命令4)git cat-f…...