【嵌入式系统设计师(软考中级)】第一章:计算机系统基础知识(中)
文章目录
- 3 算术运算和逻辑运算
- 3.1 二进制数运算方法
- 3.2 逻辑代数的基本运算与逻辑表达式化简
- 4. 计算机组成及工作原理
- 4.1 CPU的组成与工作原理
- 4.1.1 运算器(数据加工中心)
- 4.1.2 控制器(指令指挥中心)
- 4.1.3 计算机指令
- 4.1.4 寻址方式
- 4.1.5 计算机流水线
- 4.2 常用I/O设备、通信设备的性能以及基本工作原理
- 4.2.1 输入设备
- 4.2.2 输出设备
- 4.2.3 存储设备
- 4.2.4 通信设备
- 4.3 I/O接口的功能、类型和特点
- 4.3.1 I/O接口功能
- 4.3.2 接口类型
3 算术运算和逻辑运算
3.1 二进制数运算方法
略,二进制的基本加减乘除和十进制没什么区别,没啥好说的。
3.2 逻辑代数的基本运算与逻辑表达式化简
- 逻辑代数基本运算如下表:
运算 | 符号 | 真值表 | 逻辑表达式 |
---|---|---|---|
与(AND) | · 或 ∧ | 0·0=0 , 0·1=0 , 1·1=1 | Y = A·B |
或(OR) | + 或 ∨ | 0+0=0 , 0+1=1 , 1+1=1 | Y = A+B |
非(NOT) | ¬ 或 ¯ | ¬0=1 , ¬1=0 | Y = ¬A |
异或(XOR) | ⊕ | 0⊕0=0 , 0⊕1=1 , 1⊕0=1 , 1⊕1=0 | Y = A⊕B |
- 位运算说明如下表:
运算符 | 功能 | 示例 |
---|---|---|
& | 按位与 | 1010 & 1100 = 1000 |
| | 按位或 | 1010 | 1100 = 1110 |
^ | 按位异或 | 1010 ^ 1100 = 0110 |
~ | 按位取反 | ~1010 = 0101 |
<< | 左移(高位丢弃,低位补0) | 1010 << 2 = 101000 |
>> | 右移(低位丢弃,高位补符号位) | 1010 >> 2 = 0010 |
-
逻辑表达式化简
- 交换律:
A+B = B+A
,A·B = B·A
- 结合律:
(A+B)+C = A+(B+C)
- 分配律:
A·(B+C) = A·B + A·C
- 恒等率:消除无效操作,如
×1
或+0
- 吸收率:消除冗余操作,如
A + (A · B) = A
或A · (A + B) = A
或A + (¬A · B) = A + B
- 德摩根定律:
¬(A+B) = ¬A·¬B
,¬(A·B) = ¬A + ¬B
- 交换律:
-
化简方法
-
代数法:应用逻辑定律逐步化简
原始式:Y = A·B + A·¬B + ¬A·B 化简: = A·(B + ¬B) + ¬A·B (分配律) = A·1 + ¬A·B (互补律:B + ¬B = 1) = A + ¬A·B (恒等律:A·1=A) = A + B (吸收律:A + (¬A · B) = A + B)
-
卡诺图法(K-map):
- 这个方法很复杂,其大概步骤如下:
- 将真值表转换为方格图(变量数≤4)
- 圈出相邻的
1
(必须为2ⁿ个) - 消去变化变量,保留恒定变量
- 这个方法很复杂,其大概步骤如下:
具体过程可以参考下这个视频,真的很复杂😭。。
-
4. 计算机组成及工作原理
计算机系统的基本架构可以由下面的框图简单表示:
4.1 CPU的组成与工作原理
CPU由运算器和控制器两大模块组成:
4.1.1 运算器(数据加工中心)
组件 | 功能说明 | 工作流程示例 |
---|---|---|
算术逻辑单元(ALU) | 执行所有算术(±*/)和逻辑运算(AND/OR/NOT) | 从寄存器取操作数 → 运算 → 结果回写 |
累加寄存器(AC) | 为ALU提供临时工作区,存储中间结果 | AC ← AC + DR (累加操作) |
数据缓冲寄存器(DR) | 暂存来自内存的指令或数据,缓解CPU与内存速度差异 | 取指令阶段:DR ← Memory[PC] |
状态寄存器(PSW) | 存储运算状态标志(零标志ZF/进位CF/溢出OF等) | ALU运算后自动更新PSW |
4.1.2 控制器(指令指挥中心)
组件 | 功能说明 | 工作流程示例 |
---|---|---|
程序计数器(PC) | 存储下一条指令的内存地址,自动递增或跳转 | PC ← PC + 1 (顺序执行) |
指令寄存器(IR) | 保存当前正在执行的指令 | IR ← DR (取指令阶段) |
指令译码器(ID) | 解析指令操作码,生成控制信号 | 识别MOV AX,BX → 激活数据通路控制信号 |
时序部件 | 生成时钟信号,协调各部件工作节奏 | 发出取指/执行/写回三阶段时序脉冲 |
4.1.3 计算机指令
指令的本质是机器语言语句,CPU直接执行的二进制代码 ,其格式如下:
字段 | 作用 | 示例场景(加法指令) |
---|---|---|
操作码(OP) | “做什么”:指明操作类型(如加减/跳转/存储) | ADD → 算术加法 |
地址码(Aₙ) | “对谁做”:提供操作数地址或结果存储位置(数量因指令类型而异) | A₁=源数据1, A₂=源数据2, A₃=目标地址 |
4.1.4 寻址方式
①立即寻址
- 特点:操作数直接包含在指令中
- 格式:
OP + 操作数
- 示例:
MOV AX, 5
(将数值5直接存入AX寄存器) - 优点:执行速度快(无需访问内存)
- 缺点:操作数无法修改,灵活性低
②直接寻址
- 特点:指令中存放操作数的内存地址
- 格式:
OP + 内存地址
- 示例:
MOV AX, [1000H]
(将内存地址1000H处的内容存入AX) - 优点:访问确定的内存位置
- 缺点:地址长度限制指令长度
③间接寻址
- 特点:指令中的地址指向另一个地址(指针的指针)
- 格式:
OP + 地址指针
- 示例:
MOV AX, [[BX]]
(BX寄存器的值作为地址,再取该地址的内容) - 优点:支持动态内存访问
- 缺点:需要两次内存访问,速度慢
④寄存器寻址
- 特点:操作数存放在寄存器中
- 格式:
OP + 寄存器名
- 示例:
ADD AX, BX
(AX = AX + BX) - 优点:速度最快(CPU内部操作)
- 缺点:寄存器数量有限
⑤寄存器间接寻址
- 特点:寄存器中存放的是操作数的地址
- 格式:
OP + 寄存器名
- 示例:
MOV AX, [BX]
(BX的值作为内存地址,取该地址内容到AX) - 优点:比内存间接寻址更快
- 缺点:仍需要一次内存访问
寻址方式对比
寻址方式 | 操作数位置 | 访问次数 | 速度 | 灵活性 |
---|---|---|---|---|
立即寻址 | 指令内部 | 0 | ★★★★★ | ★★ |
寄存器寻址 | 寄存器 | 0 | ★★★★★ | ★★★ |
直接寻址 | 指定内存地址 | 1 | ★★★ | ★★★★ |
寄存器间接寻址 | 寄存器指向的内存 | 1 | ★★★★ | ★★★★★ |
间接寻址 | 内存指向的内存 | 2 | ★★ | ★★★★★ |
典型应用场景
- 立即寻址:初始化常量(如
MOV CX, 10
) - 寄存器寻址:高速数据运算(如
ADD DX, SI
) - 直接寻址:访问固定内存变量(如
MOV AL, [VAR1]
) - 寄存器间接寻址:数组/字符串处理(如
MOV AL, [SI]
配合SI递增) - 间接寻址:指针操作(如C语言中的双重指针
**p
)
4.1.5 计算机流水线
流水线的核心思想是将指令执行过程分解为以下多个阶段,各阶段并行处理不同指令,类似工厂流水线:
- 取指:从内存读取指令
- 分析:解析指令操作
- 执行:ALU执行运算
- 访存:访问内存数据
- 写回:将结果写回寄存器
时钟周期 → 1 2 3 4 5 6 7 ...指令1: 取指 分析 执行 访存 写回指令2: 取指 分析 执行 访存 写回指令3: 取指 分析 执行 访存 写回
关键参数:
- 流水线周期(Δt):耗时最长的阶段所需时间(决定流水线速度)
- 吞吐率(TP):单位时间内完成的指令数(TP = 指令数n / 总时间Tₖ)
流水线时间计算:
-
理论公式(更精确):
T 总 = t 1 + t 2 + … + t k + ( n − 1 ) × Δ t T_{\text{总}} = t_1 + t_2 + \ldots + t_k + (n-1) \times \Delta t T总=t1+t2+…+tk+(n−1)×Δt
(k=阶段数,n=指令数) -
简化公式(常用):
T 总 = k × Δ t + ( n − 1 ) × Δ t T_{\text{总}} = k \times \Delta t + (n-1) \times \Delta t T总=k×Δt+(n−1)×Δt
(假设所有阶段时间=Δt)
示例计算:
题目:每条指令分为3个阶段:取指2ns,分析2ns,执行1ns,执行100条指令
-
流水线周期Δt = 最长阶段时间 = 2ns
-
总时间 = (3阶段×2ns) + (99×2ns) = 6 + 198 = 204ns
-
实际吞吐率:
T P = n T 总 = 100 204 ns ≈ 0.49 条/ns TP = \frac{n}{T_{\text{总}}} = \frac{100}{204\text{ns}} ≈ 0.49 \text{条/ns} TP=T总n=204ns100≈0.49条/ns -
最大吞吐率:
T P max = 1 Δ t = 1 2 ns = 0.5 条/ns TP_{\text{max}} = \frac{1}{\Delta t} = \frac{1}{2\text{ns}} = 0.5 \text{条/ns} TPmax=Δt1=2ns1=0.5条/ns
4.2 常用I/O设备、通信设备的性能以及基本工作原理
4.2.1 输入设备
设备 | 性能指标 | 工作原理 | 应用场景 |
---|---|---|---|
键盘 | 按键寿命、响应延迟 | 扫描矩阵电路检测按键通断,生成扫描码 | 人机交互 |
鼠标 | DPI(精度)、采样率 | 光学传感器捕捉位移,编码为坐标数据 | 图形界面操作 |
扫描仪 | 分辨率(DPI)、色彩深度 | CCD/CMOS传感器逐行扫描光反射信号 | 文档数字化 |
4.2.2 输出设备
设备 | 性能指标 | 工作原理 | 特点 |
---|---|---|---|
显示器 | 分辨率、刷新率、色域 | LCD:液晶分子偏转控制透光 OLED:有机发光二极管自发光 | 响应时间影响动态画面 |
打印机 | PPM(页/分钟)、打印精度 | 激光打印机:静电吸附碳粉 喷墨打印机:微滴喷射 | 激光机适合大批量打印 |
4.2.3 存储设备
设备 | 性能指标 | 工作原理 | 关键参数 |
---|---|---|---|
机械硬盘 | 转速(7200/10000RPM)、寻道时间 | 磁头在盘片磁性介质上读写数据 | 延迟受物理运动限制 |
固态硬盘 | 读写速度(MB/s)、IOPS | NAND闪存芯片电子存储,无机械部件 | 抗震动、低功耗 |
4.2.4 通信设备
设备 | 性能指标 | 工作原理 | 协议标准 |
---|---|---|---|
网卡 | 速率(1Gbps/10Gbps)、MAC地址 | 将数据封装为帧,处理物理层信号调制 | IEEE 802.3(以太网) |
调制解调器 | 调制速率(56Kbps等) | 数字信号↔模拟信号转换(ADSL使用频分复用) | V.34/V.90标准 |
4.3 I/O接口的功能、类型和特点
4.3.1 I/O接口功能
- 数据缓冲:解决速度不匹配
- 信号转换:电平/格式转换
- 设备选择:地址译码
- 命令译码:解释CPU命令
- 状态反馈:返回设备状态
4.3.2 接口类型
类型 | 特点 | 典型应用 | 传输方式 |
---|---|---|---|
并行接口 | 多线同时传输(如8/16位),速度快但易干扰(IEEE 1284) | 老式打印机 | 并行 |
串行接口 | 单线逐位传输,抗干扰强(USB 3.0可达5Gbps) | 鼠标、键盘、移动存储 | 串行 |
DMA接口 | 直接内存访问,不经过CPU(通过DMA控制器) | 高速磁盘传输 | 总线主控 |
SCSI | 支持多设备菊链连接,高可靠性 | 企业级存储阵列 | 并行/串行 |
相关文章:
【嵌入式系统设计师(软考中级)】第一章:计算机系统基础知识(中)
文章目录 3 算术运算和逻辑运算3.1 二进制数运算方法3.2 逻辑代数的基本运算与逻辑表达式化简 4. 计算机组成及工作原理4.1 CPU的组成与工作原理4.1.1 运算器(数据加工中心)4.1.2 控制器(指令指挥中心)4.1.3 计算机指令4.1.4 寻址…...
实时数据处理的革命:Apache Flink 在大数据流处理中的应用
实时数据处理的革命:Apache Flink 在大数据流处理中的应用 在大数据时代,数据的价值不仅仅体现在存储和分析,更重要的是实时处理。传统的批处理模式往往无法满足现代业务对数据的实时性需求,而流式计算技术的兴起,让数据处理从“静态分析”变成了“动态决策”。其中,Apa…...
HttpSessionListener 的用法笔记250417
HttpSessionListener 的用法笔记250417 以下是关于 HttpSessionListener 的用法详解,涵盖核心方法、实现步骤、典型应用场景及注意事项,帮助您全面掌握会话(Session)生命周期的监听与管理: 1. 核心功能 HttpSessionLi…...
基于html实现的课题随机点名
这是一个用于随机点名系统的HTML网页,具有中国古典风格的设计。 下面我将从多个方面详细介绍这个文件: 1. 文件基本信息 文件名:name.html 文件类型:HTML5文档 语言:简体中文(zh-CN) 编码:UTF-8 标题&…...
【KWDB 创作者计划】深度实操体验 KWDB 2.2.0:从安装到实战的全流程解析以及实操体验
一、引言 KWDB 是一款高性能的分布式数据库,支持事务、强一致性和水平扩展。本文将详细介绍如何通过 Docker 快速部署 KWDB 2.2.0,并基于实际操作演示数据库的核心功能,涵盖环境准备、容器运行、数据操作及集群部署等关键环节。 二、Docker…...
ASP.NET Core中SqlSugar基本使用
创建数据模型 public class News{[SugarColumn(IsIdentity true, IsPrimaryKey true)]public int Id { get; set; }//nvarchar带中文比较好[SugarColumn(ColumnDataType "nvarchar(30)")]public string Title { get; set; }[SugarColumn(ColumnDataType "te…...
【软考-系统架构设计师】设计模式三大类型解析
设计模式三大类型深度解析 一、创建型模式(Creational Patterns) 核心目标:解耦对象的创建与使用过程,提供灵活的对象生成机制,降低系统对具体类的依赖。 适用场景:需要动态创建对象、隐藏对象创建细节或…...
正则表达式在爬虫中的应用:匹配 HTML 和 JSON 的技巧
在爬虫开发中,正则表达式是一种强大的工具,可以帮助我们从复杂的文本中提取所需信息。无论是处理 HTML 页面还是 JSON 数据,正则表达式都能发挥重要作用。本文将深入探讨正则表达式在爬虫中的应用,包括如何匹配 HTML 和 JSON 数据…...
LaTeX文章写法
文章目录 模板1、无序列表格式2、对齐2.1、section对齐 模板 文章模板 %\documentclass[a4paper,12pt]{article} % 选择 A4 纸张和 12pt 字体大小 \documentclass[12pt,a4paper]{ctexart}% 加载必要的宏包 \usepackage{fontspec} % 支持字体设置 \usepackage{xeCJK} …...
电力变压器油的<油质气象色谱>指标分析
目录 1.变压器油质化验指标分析 2.变压器油质化验原理及流程 变压器油质气象色谱(气相色谱,Gas Chromatography, GC)检测是一种通过分离和定量分析油中溶解气体成分的技术,用于诊断变压器内部故障。其核心原理基于不同气体在流动…...
赋能能源 | 智慧数据,构建更高效智能的储能管理系统
行业背景 随着新能源产业的快速发展,大规模储能系统在电力调峰、调频及可再生能源消纳等领域的重要性日益凸显。 储能电站作为核心基础设施,其能量管理系统(EMS)需要处理海量实时数据,包括电池状态、功率变化、环境监…...
AWS中国区服务部署与ICP备案全流程指南:从0到1实现合规上线
导语: 在中国大陆地区使用AWS服务,不仅需要了解AWS的基本操作,还需要熟悉中国特有的法规要求。本文将为您提供一个全面的指南,涵盖AWS中国区账号创建、服务部署、ICP备案申请,以及合规运营的全过程。无论您是AWS新手还是经验丰富的开发者,这篇文章都将为您在AWS中国区的journey…...
android系统使用FFmpeng集成OpenSL音频录制和播放
目录 一、背景 二、方案 三、代码实现 3.1 初始化OpenSL 3.2 设置播放回掉 3.3 使用FFmpeg计算出转换后的样本数目 一、背景 FFmpeg不能够操作Android的硬件设备,所以要在Android系统上面播放音频的话需要另找办法 二、方案 Android 环境下音频播放通常有两…...
顺序表和链表,时间和空间复杂度--数据结构初阶(1)(C/C++)
文章目录 前言时间复杂度和空间复杂度理论部分习题部分 顺序表和链表理论部分作业部分 前言 这期的话会给大家讲解复杂度,顺序表和链表的一些知识和习题部分(重点是习题部分,因为这几个理念都比较简单) 时间复杂度和空间复杂度 理论部分 时间复杂度和…...
【C++面向对象】封装(下):探索C++运算符重载设计精髓
🔥个人主页 🔥 😈所属专栏😈 每文一诗 💪🏼 年年岁岁花相似,岁岁年年人不同 —— 唐/刘希夷《代悲白头翁》 译文:年年岁岁繁花依旧,岁岁年年看花之人却不相同 目录 C运…...
分布式存储数据恢复—hbase和hive数据库文件被删除如何恢复数据?
分布式存储数据恢复环境: 16台某品牌R730xd服务器节点,每台服务器节点上有数台虚拟机。 虚拟机上部署Hbase和Hive数据库。 分布式存储故障: 数据库底层文件被误删除,数据库不能使用。要求恢复hbase和hive数据库。 北亚企安数据恢复…...
【并行分布计算】Hadoop伪分布搭建
Hadoop伪分布搭建 1. 修改core-site.xml fs.defaultFS设置的是HDFS的地址,设置运行在本地的9000端口上 hadoop.tmp.dir设置的是临时目录,如果没有设置的话默认在/tmp/hadoop-${user.name}中,系统重启后会导致数据丢失,因此修改这…...
Redis面试——常用命令
一、String (1)设置值相关命令 1.1.1 SET 功能:设置一个键值对,如果键已存在则覆盖旧值语法: SET key value [EX seconds] [PX milliseconds] [NX|XX]EX seconds:设置键的过期时间为 seconds 秒 PX milli…...
告别定时任务!用Dagster监听器实现秒级数据响应自动化
在数据管道开发中,我们经常面临需要根据外部事件触发计算任务的场景。传统基于时间的调度方式存在资源浪费和时效性不足的问题。本文将通过Dagster的**传感器(Sensor)**功能,演示如何构建事件驱动的数据处理流程。 场景模拟&…...
测试用例的生命周期:从诞生到退役的全过程管理
测试用例不是一成不变的标本 在敏捷开发时代,测试用例就像有机生命体一样会经历完整的生命周期。据Microsoft Research调查,良好管理的测试用例可使缺陷发现率提升40%,而缺乏管理的用例库在6个月后失效比例高达65%,本文将深入解析…...
【并行分布计算】Hadoop单机分布搭建
Hadoop单机分布搭建 环境:VMware Workstation虚拟机centos7镜像MobaXterm远程连接工具 为了使机器都处于同一个局域网中,先要修改机器的ip地址分配方式为固定ip,并为其固定分配一个ip地址。 [rootlocalhost ~]# vi /etc/sysconfig/network-…...
Android studio前沿开发--利用socket服务器连接AI实现前后端交互(全站首发思路)
我们在前几期学习了利用socket进行前后端的交互,但那只是基础性知识,这次,通过参考讯飞星火的java参考文档,再结合之前所学的socket服务,成功实现了通过后端将AI的调用实现在了自己的APP中。 本次的学习内容 1.真机的…...
Redis的下载安装和使用(超详细)
目录 一、所需的安装包资源小编放下述网盘了,提取码:wshf 二、双击打开文件redis.desktop.manager.exe 三、点击next后,再点击i agree 四、点击箭头指向,选择安装路径,然后点击Install进行安装 五、安装完后依次点…...
手机状态:UML 状态图(State Diagram)的解析与绘画
目录 一、UML 状态图(State Diagram)是什么 二、题目原型 三、手机状态图的解析 状态转换的触发条件 四、状态图的构建与解读 图的解读 五、状态图的实际应用 六、总结与展望 一、UML 状态图(State Diagram)是什么 UML …...
MyBatisPlus-QueryWrapper的exists方法拼接SQL中的EXISTS子句
在 MyBatis-Plus 中,QueryWrapper 的 exists 方法用于拼接 SQL 中的 EXISTS 子句,通常用于构 建子查询条件。以下是具体用法和示例: 1. 基本语法 // 判断是否存在符合条件的记录 queryWrapper.exists(String existsSql); queryWrapper.notExists(String existsSq…...
HarmonyOS-ArkUI: 自定义组件冻结功能@ComonentV2 freezeWhenInactive属性
引 @ComponentV2 装饰器是可以接收参数的,叫freezeWhenInactive, 顾名思义,就是当组件变成Inactive的时候,冻结。其默认值是false。所以如果您没有传参数时,默认不冻结。 冻结到底是一种什么状态呢?说简单点就是状态变量不响应更新。@Monitor修饰的那些状态变量更新检测…...
【问题】一招解决vscode输出和终端不一致的困扰
背景(闲话Trae) Trae是挺好,用了几天,发现它时不时检查文件,一检测就转悠半天,为此我把当前环境清空,就留一个正在调的程序,结果还照样检测,虽然没影响什么,…...
【CODESYS学习笔记001】MODBUS-TCP 与 标准TCP通信的优缺点对比
1. MODBUS-TCP 优点: 1. 标准化协议 - 基于工业标准(RFC标准),兼容性强,几乎所有PLC和工业设备都支持。 - 固定功能码(如0x03读寄存器、0x10写寄存器),开发简单。 2. 数据格…...
⭐ Unity 使用Odin Inspector增强编辑器的功能:UIManager脚本实例
先看一下测试效果: 在Unity开发中,Odin Inspector已经成为了一个非常受欢迎的工具,它通过增强编辑器的功能,使得开发者在工作中更加高效,尤其是在处理复杂数据和自定义编辑器方面。今天,我们将通过一个简…...
Linux网络协议栈深度解析:从数据封装到子网划分的底层架构
知识点5 1、封装和解封装的流程 封装数据报文:发送数据 解封装数据报文:接收报文 以后我们的网络编程过程中,只需要告知IP与端口号,链路层的MAC地址 有协议栈帮我们提供。 2、链路层报文格式(mac报文) …...
Java与MySQL数据库连接的JDBC驱动配置教程
系列文章目录 Java JDBC编程 文章目录 系列文章目录前言一、JDBC简介:二、mysql-connector-java驱动详解: 驱动版本特性介绍: 三、JDBC驱动安装与配置: 1.IDE项目设置:2.命令行安装:3.使用Maven或Gradle :…...
光伏产品研发项目如何降本增效?8Manage 项目管理软件在复合材料制造的应用
在复合材料制造领域,特别是光伏PECVD石墨舟和燃料电池石墨双极板等高精尖产品的研发过程中,高效的项目管理直接决定了产品开发周期、质量和市场竞争力。然而,许多企业在项目立项、进度跟踪、资源分配和质量控制等环节面临挑战。 针对这些痛点…...
矫平机:工业制造中的“板材整形师“
在机械制造车间此起彼伏的轰鸣声中,一卷卷冷轧钢卷正经历着神奇的蜕变。经过开卷、矫平、剪切等工序,原本蜷曲的金属板材变得平整如镜,这些改变都源于生产线上一个关键设备——矫平机。这台被称作"板材整形师"的精密机械࿰…...
数据江湖:Node.js 与 SQLite3 的轻量之道
前言 在这个“万码奔腾”的时代,想在江湖中闯出一片天地,不光要有剑(JavaScript),还得有招式(数据库)!本篇秘籍便是教你如何用 Node.js + SQLite3 打造一座小而美的“数据藏经阁”。初学者可轻松上手,高手可在细节中悟出更深的“数据库心法”。 简介 SQLite 在前端…...
4.15BUUCTF Ez_bypass,HardSQL,AreUSerialz,BabyUpload,CheckIn
[MRCTF2020]Ez_bypass 打开环境,看源码 include flag.php; $flagMRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}; if(isset($_GET[gg])&&isset($_GET[id])) {$id$_GET[id];$gg$_GET[gg];if (md5($id) md5($gg) && $id ! $gg) {echo You got the first step;i…...
【HarmonyOS NEXT+AI】问答 03:找不到 DevEco Studio Cangjie Plugin 下载链接?
【HarmonyOS NEXTAI】问答 03:找不到 DevEco Studio Cangjie Plugin 下载链接? 在 "HarmonyOS NEXTAI 大模型打造智能助手 APP (仓颉版)" 课程里面,有学员提到了这样一个问题:我在华为开发者社区官网找不到 DevEco Stu…...
使用 reverse-sourcemap 工具反编译 Vue 项目
要使用 reverse-sourcemap 工具反编译 Vue 项目,可以按照以下步骤操作: 步骤一:安装 reverse-sourcemap 首先,需要全局安装 reverse-sourcemap 工具。在命令行中执行以下命令: npm install --global reverse-sourcem…...
通信安全员历年考试重难点有哪些?
通信安全员考试的重难点紧密围绕行业特性和法规更新展开,需结合最新政策与实践案例综合掌握。以下是基于历年考试趋势及 2025 年新规的深度解析: 一、核心法规与标准体系(占比 30%-40%) 1. 安全生产法与行业规定 《安全生产法》…...
C++(OpenCV)实现MATLAB的edge(I, “sobel“)边缘检测
文章目录 方案分析具体代码实现关键步骤说明注意事项 为了实现类似于MATLAB的edge(I, "sobel")函数的C代码,我们需要复现其完整的边缘检测流程,包括梯度计算、非极大值抑制和阈值处理。以下是具体的方案及代码实现: 方案分析 图像…...
uniapp通过uni.addInterceptor实现路由拦截
注:此拦截不能首次拦截路由跳转的方法(switchTab, navigateTo, reLaunch, redirectTo),拦截request请求api可以 1. app.vue 代码 import { onLaunch} from dcloudio/uni-appimport permission from ./utils/permissiononLaunch(…...
vue2.x Echart label根据数据长度选择不同的间隔显示
折线图需要在各个点上方展示数据,但是数据数字的位数可能达到5~8位,需要根据密度进行间隔展示。例如,如果数据长度小于7,则每一项都展示,如果在7~10之间,2位展示一项,如果大于10,那么…...
Wifi密码查看软件V1.0
⭐本软件用于查看电脑连接过所有WiFi密码,不具备破解功能。 可在忘记WiFi密码或他人输入密码自己不知道的情况下使用。 ⭐⭐为便于快速分享,加入双击【密码】列可将WIFI密码复制在粘贴板。 ⭐⭐⭐双击【名称】列可生成用于手机连接的二维码进行显示&…...
Hyperf (Swoole)的多进程 + 单线程协程、Gin (Go)Go的单进程 + 多 goroutine 解说
1. 核心概念解析 (1) Hyperf (Swoole): 多进程 单线程协程 Swoole 并发模型详解 Swoole 的并发模型基于多进程架构,每个进程是单线程的,线程内运行多个协程。以下是其结构的关键点: 多进程:Swoole 应用程序启动时,…...
国内网络设备厂商名单(List of Domestic Network Equipment Manufacturers)
国内网络设备厂商名单 运维工程师必须广泛熟悉国内外各大厂商的设备,深入掌握其应用场景、功能特点及优势。这不仅有助于在故障排查时迅速定位问题,还能在系统设计、优化与升级中做出更合理的决策。对设备特性的精准把握,能够显著提升运维效…...
基础元器件-电感(2025.4.17)
1.电感是电磁感应器件,它是储能元器件。 2.电感表示形式(直标法和色标法) 3.电感读取基准是mH,3R3指的是3.3mH,R代表小数点。 4.电感特性:通直流阻交流 5.电感的分类 注:用电容或者电感滤波是…...
高通手机抓取sniffer log的方法
方法如下: adb root adb remount adb shell echo 4 >/sys/module/wlan/parameters/con_mode //不同的高通基线这块目录存在差异性 ifconfig wlan0 up iwpriv wlan0 setMonChan 149 2 //设置信道和bandwitdh tcpdump -i wlan0 -v -w /data/chan149.pcap 生成…...
React 设计艺术:如何精确拆分组件接口,实现接口隔离原则
接口隔离原则 接口隔离原则(Interface Segregation Principle,简称 ISP)也是面向对象设计中的重要原则之一。它的核心思想是,一个类不应该依赖它不需要的接口。在 React 开发中,遵循接口隔离原则可以提高代码的可维护性…...
BFS DFS ----习题
题目1 答案1 #include <bits/stdc.h>using namespace std;const int N 210; int n,k; int arr[N]; int res 0;void dfs(int x,int start,int nowsum) {if (nowsum > n) return ;if(x>k){if(nowsum n) res;return ;}for(int i start;nowsumi*(k-x1)<n;i){a…...
第十七届“华中杯”大学生数学建模挑战赛题目A题 晶硅片产销策略优化 完整成品 代码 模型 思路 分享
近年来,高纯度晶硅片需求的增长引发了更激烈的市场竞争。晶硅片企业需要在成本控制、利润优化和供需管理之间取得平衡,以提高经营效率和市场竞争力。晶硅片的生产是一个高能耗、高成本的过程,企业效益会受到原材料价格波动、市场需求变化以及…...
java 设计模式之单例模式
简介 单例模式:一个类有且仅有一个实例,该类负责创建自己的对象,同时确保只有一个对象被创建。 特点:类构造器私有、持有自己实例、对外提供获取实例的静态方法。 单例模式的实现方式 饿汉式 类被加载时,就会实例…...