软考 中级软件设计师 考点笔记总结 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协议解析》相关的内容。从业十…...

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

MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...

佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...

Python训练营-Day26-函数专题1:函数定义与参数
题目1:计算圆的面积 任务: 编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求:函数接收一个位置参数 radi…...
Linux安全加固:从攻防视角构建系统免疫
Linux安全加固:从攻防视角构建系统免疫 构建坚不可摧的数字堡垒 引言:攻防对抗的新纪元 在日益复杂的网络威胁环境中,Linux系统安全已从被动防御转向主动免疫。2023年全球网络安全报告显示,高级持续性威胁(APT)攻击同比增长65%,平均入侵停留时间缩短至48小时。本章将从…...
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南 背景介绍完整操作步骤1. 创建Docker容器环境2. 验证GUI显示功能3. 安装ROS Noetic4. 配置环境变量5. 创建ROS节点(小球运动模拟)6. 配置RVIZ默认视图7. 创建启动脚本8. 运行可视化系统效果展示与交互技术解析ROS节点通…...
【Ftrace 专栏】Ftrace 参考博文
ftrace、perf、bcc、bpftrace、ply、simple_perf的使用Ftrace 基本用法Linux 利用 ftrace 分析内核调用如何利用ftrace精确跟踪特定进程调度信息使用 ftrace 进行追踪延迟Linux-培训笔记-ftracehttps://www.kernel.org/doc/html/v4.18/trace/events.htmlhttps://blog.csdn.net/…...

2025 后端自学UNIAPP【项目实战:旅游项目】7、景点详情页面【完结】
1、获取景点详情的请求【my_api.js】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http(/login/getWXSessionKey, {code,avatar}); };//…...