当前位置: 首页 > news >正文

【单片机】ARM 处理器简介

ARM 公司简介

ARM(Advanced RISC Machine)英国 ARM 公司(原 Acorn RISC Machine) 开发的一种精简指令集(RISC) 处理器架构。ARM 处理器因其低功耗、高性能、广泛适用性,成为嵌入式系统、移动设备、服务器、AI 计算等领域的主流选择。

在这里插入图片描述
ARM 是一家英国公司,其商业模式独特,不直接生产芯片,而是专注于IP 核授权Chipless 生产模式ARM 不生产芯片,也不直接设计完整芯片,而是设计高效的 CPU 内核授权给半导体公司(如 Apple、Qualcomm、NVIDIA、Samsung)进行芯片制造。目前, ARM 生态系统广泛应用于智能手机、物联网、汽车电子、云计算等多个领域。

ARM 架构的主要特点

32 位 / 64 位 RISC 处理器ARM 最初是 32 位 RISC 架构(ARMv7 及以下),支持 Thumb 指令集,代码密度高。ARMv8 及以上支持 64 位架构,适用于高性能计算(如服务器、智能手机)。低功耗,高性能ARM 采用精简指令集(RISC),指令执行效率高,功耗低。适用于电池供电设备(如智能手机、IoT 设备),同时也能用于高性能计算(如服务器)。丰富的内核和扩展ARM 提供多种 IP 内核(下面详细介绍ARM提供的Cortex系列),包括:Cortex-A(高性能计算,如智能手机、平板)Cortex-M(低功耗嵌入式,如 STM32、ESP32)Cortex-R(实时计算,如汽车电子、工业控制)支持各种体系扩展,如:TrustZone(安全扩展,用于安全处理)NEON SIMD(多媒体加速)SVE(Scalable Vector Extension)(用于 HPC 和 AI 计算)
ARM 处理器的主要特点解析

🔹 1. 体积小、低功耗、低成本、高性能

✅ 体积小:ARM 处理器采用简化的指令集(RISC),芯片架构紧凑,占用硅片面积小。
✅ 低功耗:支持动态电源管理(DPM),适用于移动设备(手机、平板)、IoT 设备。
✅ 低成本:ARM 采用IP 授权模式,制造门槛低,适合大规模量产。
✅ 高性能:流水线(Pipeline)、多核设计、向量运算(SIMD) 提高计算能力。

例如:(Cortex-M系列)
在这里插入图片描述
🔹 2. 支持 Thumb(16 位)和 ARM(32 位)双指令集

ARM 指令集(32 位):指令功能强大,适用于高性能计算。
Thumb 指令集(16 位):代码密度更高,节省存储空间和功耗。
Thumb-2 指令集(16/32 位混合):兼顾高效能和低功耗(如 Cortex-M 系列 MCU)。

🔹 3. 大量使用寄存器,指令执行速度更快

寄存器架构:ARM 处理器一般有 16~32 个通用寄存器(R0~R15),减少访存次数,提高执行效率。
寄存器优先级高:大部分运算在寄存器中完成,避免大量内存读写,提高运行速度。

🔹 4. 大多数数据操作都在寄存器中完成

寄存器-寄存器运算:如 ADD R0, R1, R2(R0 = R1 + R2),比内存-内存计算更快。
避免冯·诺依曼瓶颈:减少对内存总线的依赖,提高指令执行效率。

🔹 5. 寻址方式灵活简单,执行效率高

ARM 支持多种寻址模式,如:立即数寻址:MOV R0, #10(将 10 直接存入 R0)寄存器寻址:LDR R1, [R2](从 R2 指向的地址加载数据到 R1)基址+偏移寻址:LDR R1, [R2, #4](从 R2 + 4 处读取数据)减少访存次数,提高执行效率,适用于嵌入式应用。

🔹 6. 指令长度固定

ARM 指令(32-bit 固定长度):执行速度快,适合流水线处理。
Thumb 指令(16-bit):代码密度更高,适用于存储受限的嵌入式系统。
Thumb-2(16/32-bit 混合):兼顾执行效率和存储优化。

🔹 7. 对操作系统的支持广泛
广泛支持 Linux、Android、RTOS 等操作系统,应用范围广泛。

ARM 支持多种 OS:嵌入式 RTOS(实时操作系统):如 FreeRTOS、RT-Thread、μC/OS、Zephyr移动设备(智能手机、平板):如 Android、iOS服务器和云计算:如 ARM 版 Linux、Windows on ARM、鸿蒙 OS广泛应用于消费电子、工业控制、汽车电子、物联网、AI 计算等领域。

ARM 处理器的发展演进

ARM处理器的发展演进
该图展示了 ARM 处理器的发展演进,从经典的 ARM7、ARM9、ARM11,到后来的Cortex 系列(A、R、M)。ARM 处理器性能与功能趋势,从左下角(ARM7、Cortex-M0)到右上角(Cortex-A15),表示性能和功能不断增强嵌入式 Cortex-M 处理器(绿色区域),强调低功耗和实时性;实时处理 Cortex-R 处理器(黄色区域),强调高可靠性;应用处理 Cortex-A 处理器(橙色区域),强调高计算能力。Cortex-A 适用于智能手机、平板、服务器(如 Cortex-A15);Cortex-R 适用于实时计算、汽车电子(如 Cortex-R4);Cortex-M 适用于低功耗 MCU 和 IoT 设备(如 Cortex-M4),ARM 处理器的演进体现了从低功耗嵌入式到高性能计算的多样化发展方向。

ARM 处理器经过多代发展,从早期的 ARM7、ARM9,到 ARM11,再到现代的 Cortex 系列(Cortex-A、Cortex-R、Cortex-M),广泛应用于嵌入式、移动设备、服务器、汽车电子、IoT 等领域。

ARM 处理器的分类

ARM 公司在 ARM11 之后,采用 Cortex 命名,并将处理器分为三大类别

  1. Cortex-A(Application,应用处理):高性能计算,适用于智能手机、平板、服务器
  2. Cortex-R(Real-time,实时处理):高可靠性、低延迟,适用于汽车电子、工业控制
  3. Cortex-M(Microcontroller,嵌入式微控制器):低功耗,适用于MCU、物联网(IoT)
ARM 处理器系列发展

🔹 经典 ARM 处理器(Classic ARM Processors)

ARM7、ARM9、ARM11(ARMv4T~ARMv6 时代)
主要用于早期的嵌入式设备、功能手机、低功耗计算
📌 1. ARM 处理器系列与架构版本

ARM 处理器根据 指令集架构(ISA) 的不同,分为多个版本,如 ARMv4T、ARMv5TE、ARMv6、ARMv7、ARMv8 等。

ARM 处理器系列架构版本代表型号主要应用
ARM7TDMIARMv4TARM720T,
ARM740T
早期 MCU、嵌入式系统
ARM9TDMIARMv4TARM920T,
ARM922T,
ARM940T
低功耗嵌入式设备
ARM9EARMv5TE / v5TEJARM946E-S,
ARM966E-S,
ARM926EJ-S
工业控制、音频处理
ARM10EARMv5TE / v5TEJARM1020E,
ARM1022E,
ARM1026EJ-S
高性能嵌入式
ARM11ARMv6ARM1136J(F)-S,
ARM1156T2(F)-S,
ARM1176JZ(F)-S
智能手机(如 iPhone 2G)
Cortex-AARMv7-A / ARMv8-ACortex-A8, A9, A15, A53, A57, A72, A73智能手机、平板、服务器
Cortex-RARMv7-R / ARMv8-RCortex-R4, R5, R7, R8实时计算(汽车电子、工业控制)
Cortex-MARMv7-M / v7ME / v8-MCortex-M0, M1, M3, M4, M7低功耗 MCU(STM32、ESP32)
📌 2. ARM 指令集架构(ISA)演进

ARM 处理器的架构版本(ISA)影响指令集、性能、功耗和功能

架构版本主要特性典型处理器
ARMv4TThumb (16-bit) 指令集ARM7TDMI, ARM9TDMI
ARMv5TEDSP 指令优化ARM9E, ARM10E
ARMv6SIMD 加速,改进的 Thumb-2ARM11
ARMv7-ACortex-A,支持 NEON、TrustZoneCortex-A8, A9, A15
ARMv7-RCortex-R,实时处理能力增强Cortex-R4, R5, R7
ARMv7-MCortex-M,低功耗嵌入式Cortex-M0, M3, M4, M7
ARMv8-A支持 64-bit 计算Cortex-A53, A57, A72
ARMv8-R64-bit 实时计算Cortex-R8
ARMv8-M64-bit MCU,TrustZone 支持Cortex-M23, M33
ARMv9SVE2 向量计算,安全增强Cortex-X1, X2, A710, A78
📌 3. 现代 ARM 处理器分类

🔹 Cortex 处理器(ARMv7 及以上架构)

Cortex-A(应用级处理器):A5、A7、A8、A9、A15
Cortex-R(实时处理器):R4
Cortex-M(嵌入式微控制器):M0、M1、M3、M4
ARM 处理器系列主要用途特点典型应用
Cortex-A高性能计算支持多核、虚拟化、Linux/Android 支持智能手机、平板、智能电视、服务器
Cortex-M低功耗嵌入式低功耗、Thumb 指令集、实时性强STM32、ESP32、MCU、IoT 设备
Cortex-R实时处理高可靠性、低延迟、ECC 内存支持汽车电子、工业控制、硬盘控制器

🔹 Cortex-M 系列(低功耗 MCU)

ARM Cortex-M 系列是低功耗、高效能、易用的嵌入式微控制器(MCU),广泛用于物联网(IoT)、智能测量、汽车控制、工业自动化、消费电子、医疗设备等应用。

易于使用:支持 ARMv6-M / ARMv7-M / ARMv8-M 指令集(仅 Thumb / Thumb-2 指令),方便开发者移植代码。
低功耗设计(适用于电池供电设备):	适用于电池供电设备,实现超低功耗运行(如 Cortex-M0+)。
代码优化:采用 Thumb / Thumb-2 指令集,减少代码大小,提高执行效率。
高效能:集成 NVIC(嵌套向量中断控制器),支持实时响应。
高性价比:适用于低成本 MCU 设备,如 STM32、ESP32、NXP 处理器等;广泛用于嵌入式系统(STM32、ESP32、物联网)。
代表型号:Cortex-M4(DSP 支持,STM32F4)Cortex-M7(高性能 MCU,STM32H7)典型应用
📌 微控制器(MCU)、物联网(IoT)、低功耗设备、工业控制
📌 例如:STM32F4(Cortex-M4)、ESP32(Cortex-M4)Cortex-M 处理器的应用场景:物联网(IoT)(传感器、无线模块、智能家居)智能测量(智能电表、环境监测设备)汽车电子(ECU、ADAS、车载传感器)工业自动化(PLC、电机控制、机器人)医疗设备(心率监测、血糖仪)消费电子(智能手环、家电控制)
典型 Cortex-M 处理器
处理器型号指令集架构特点主要应用FPU(浮点单元)DSP 支持应用场景
Cortex-M0ARMv6-M超低功耗,入门级 MCU低功耗 IoT、传感器❌ 无❌ 无低功耗 MCU(STM32F0)
Cortex-M0+ARMv6-M比 M0 更低功耗便携式设备、可穿戴设备❌ 无❌ 无低功耗 MCU(STM32F0)
Cortex-M3ARMv7-M更强的计算能力工业控制、汽车电子❌ 无❌ 无中等功耗 MCU(STM32F1)
Cortex-M4ARMv7E-M支持 DSP 和 FPU语音处理、信号处理✅ 单精度 FPU✅ DSP高性能嵌入式(STM32F4)
Cortex-M7ARMv7E-M更高性能,双精度 FPU高端嵌入式计算✅ 单/双精度 FPU✅ DSP高性能嵌入式(STM32H7)
Cortex-M23ARMv8-M低功耗 + TrustZone 安全扩展物联网安全设备✅ 可选 FPU✅ DSP + 安全扩展物联网(IoT)
Cortex-M33ARMv8-M高性能 + TrustZone高安全性 IoT 设备✅ 可选 FPU✅ DSP + 安全扩展物联网(IoT)

Cortex-M 处理器适用于低功耗、高性价比的 MCU 设备:

✅ Cortex-M0/M0+ 适用于超低功耗嵌入式应用。
✅ Cortex-M3/M4 适用于高效计算和信号处理。
✅ Cortex-M7 提供更高性能,适用于复杂任务。

🔹 Cortex-R 系列(实时计算)

ARM Cortex-R 系列是 实时处理器(Real-time Processors),专为高可靠性、高可用性、低延迟实时计算设计,广泛应用于汽车电子、工业控制、存储设备、医疗设备等领域。

  • Cortex-R 处理器的核心特点
    • 高性能高时钟频率 + 高效流水线架构支持 ARMv7-R / ARMv8-R 指令集,适用于需要快速数据处理的场景(如 5G 基站、SSD 控制器)。
    • 实时性硬实时计算能力,确保任务在严格的时间限制内完成(如汽车 ECU、航空电子),低延迟,适用于实时计算
    • 高安全性:支持 ECC(错误检测和校正)、锁步模式(Dual-Core Lockstep, DCLS),适用于安全关键型应用(如汽车 ASIL-D 标准)。
    • 低功耗+高效性:兼顾 性能、功耗、芯片面积,适用于嵌入式系统中的高效计算。
  • Cortex-R 处理器应用场景
    • 汽车电子(ECU、ADAS、自适应巡航)
    • 工业控制(机器人控制、PLC、自动化系统)
    • 存储设备(SSD 控制器、HDD 控制器)
    • 航空航天 & 医疗设备(飞行控制、心脏起搏器)
    • 5G & 通信(基站、网络设备)

典型应用:
📌 汽车电子(ECU、ADAS)、工业自动化、医疗设备
📌 例如:Cortex-R5(汽车安全系统)、Cortex-R8(硬盘控制器)

典型 Cortex-R 的处理器
Cortex-R 处理器型号指令集架构双核锁步(安全性)特点主要应用
Cortex-R4ARMv7-R❌ 无高实时性、低功耗一般实时控制
汽车电子、工业控制
Cortex-R5ARMv7-R✅ 支持支持 ECC,增强安全性航空航天、医疗设备
Cortex-R7ARMv7-R✅ 支持更高性能、双核支持SSD 控制器、5G 通信
Cortex-R8ARMv8-R✅ 支持64 位计算,适用于高端实时应用5G 基站、SSD、高可靠性计算

🔹 Cortex-A 系列(高性能应用)

ARM Cortex-A 系列是 ARM 处理器家族中的应用级处理器(Application Processors),主要用于 智能手机、平板、智能电视、服务器、AI 计算等高性能计算场景。

📌 ARM Cortex-A 处理器的发展排序
ARM Cortex-A 处理器的性能从 低到高 可大致排列如下:

  1. ARM7(早期经典处理器,低功耗嵌入式)
  2. ARM9(改进架构,提升性能)
  3. ARM11(ARMv6架构,首次支持 SIMD 多媒体加速)
  4. Cortex-A5(ARMv7-A,超低功耗,适用于入门级设备)
  5. Cortex-A7(ARMv7-A,功耗更低,性能优于 A5)
  6. Cortex-A8(ARMv7-A,单核高性能处理器)
  7. Cortex-A9(ARMv7-A,多核支持,提升多任务处理能力)
  8. Cortex-A15(ARMv7-A,高性能架构,适用于高端智能设备)
  9. Cortex-A53(ARMv8-A,支持 64 位计算,低功耗)
  10. Cortex-A57(ARMv8-A,64 位高性能计算)

📌 Cortex-A 处理器的架构兼容性

  • Cortex-A15、Cortex-A9、Cortex-A8 处理器与 Cortex-A7、Cortex-A5 共享相同架构(ARMv7-A),因此它们具有完全的应用兼容性
  • 支持 ARM、Thumb 指令集,并引入Thumb-2 指令集,提高代码密度,同时保持高性能。
  • Cortex-A53 和 Cortex-A57 采用 ARMv8-A 架构,支持 64 位计算,向后兼容 32 位 ARMv7-A 指令集。

📌 Cortex-A 处理器应用场景

处理器型号架构特点主要应用
Cortex-A5ARMv7-A超低功耗,入门级低端智能设备、IoT
Cortex-A7ARMv7-A低功耗,高效低端智能手机、嵌入式
Cortex-A8ARMv7-A单核高性能早期智能手机
Cortex-A9ARMv7-A多核支持,性能提升中端智能手机、平板
Cortex-A15ARMv7-A高性能架构高端智能手机、服务器
Cortex-A53ARMv8-A64 位,低功耗低功耗移动设备
Cortex-A57ARMv8-A64 位,高性能服务器、高端智能设备

Cortex-A7/A5 提供低功耗计算,Cortex-A9/A15 适用于高性能移动设备,Cortex-A53/A57 支持 64 位计算,适用于服务器和高端设备。ARM Cortex-A 系列总体是面向高性能计算的处理器,广泛用于智能手机、平板、服务器等设备。

ARM 处理器根据不同应用场景,主要分为Cortex-A、Cortex-M 和 Cortex-R 三大系列每个系列适用于不同的计算需求,如高性能计算、嵌入式控制、实时处理等。

ARM Cortex-A / M / R 处理器对比
特性Cortex-ACortex-MCortex-R
应用领域智能手机、平板、服务器MCU、嵌入式、IoT实时控制、汽车电子
指令集ARMv7-A / ARMv8-AARMv6-M / ARMv7-M / ARMv8-MARMv7-R / ARMv8-R
指令模式ARM + ThumbThumb / Thumb-2ARM + Thumb
操作系统Linux / Android / WindowsBare-metal / RTOSRTOS
功耗适中
多核支持✅ 是❌ 否✅ 是
浮点运算(FPU)✅ 支持部分支持✅ 支持
DSP 指令部分支持✅ Cortex-M4 及以上支持✅ 支持
实时性❌ 不适合✅ 适中✅ 极强
应用示例Cortex-A76(智能手机)Cortex-M4(STM32F4)Cortex-R5(汽车电子)

总之,不同系列的 ARM 处理器针对不同应用场景进行了优化,选择时需要考虑功耗、计算性能和实时性。
Cortex-A:适用于高性能计算(智能手机、服务器)
Cortex-M:适用于低功耗嵌入式系统(STM32、ESP32)
Cortex-R:适用于高可靠性实时计算(汽车电子、工业控制)

以上。仅供学习与分享交流,请勿用于商业用途!转载需提前说明。

我是一个十分热爱技术的程序员,希望这篇文章能够对您有帮助,也希望认识更多热爱程序开发的小伙伴。
感谢!

相关文章:

【单片机】ARM 处理器简介

ARM 公司简介 ARM(Advanced RISC Machine) 是英国 ARM 公司(原 Acorn RISC Machine) 开发的一种精简指令集(RISC) 处理器架构。ARM 处理器因其低功耗、高性能、广泛适用性,成为嵌入式系统、移动…...

Flutter——最详细原生交互(MethodChannel、EventChannel、BasicMessageChannel)使用教程

MethodChannel(方法通道) 用途:实现 双向通信,用于调用原生平台提供的 API 并获取返回结果。 场景:适合一次性操作,如调用相机、获取设备信息等。 使用步骤: Flutter 端:通过 Meth…...

Kafka常用指令(详细)

Kafka常用指令(详细) 启停命令 前台启动 前台启动命令 ./bin/kafka-server-start.sh config/server.properties 后台启动方式1 后台启动命令加上参数-daemon,窗口关闭之后kafka后台程序继续运行 ./bin/kafka-server-start.sh -daemon co…...

供应链工作效率如何提升

提升供应链工作效率可以从以下几个关键方面入手: 1. 优化供应链管理 数据驱动决策:利用AI和大数据分析,提高预测准确性,优化库存管理。供应链可视化:采用ERP(企业资源计划)和SCM(供…...

1-001:MySQL的存储引擎有哪些?它们之间有什么区别?

MySQL 存储引擎 ├── InnoDB(默认引擎) │ ├── 事务支持:支持 ACID 和事务(事务日志、回滚、崩溃恢复) │ ├── 锁机制:支持行级锁,提高并发性能 │ ├── 外键支持:支持外键…...

Java/Kotlin逆向基础与Smali语法精解

1. 法律警示与道德边界 1.1 司法判例深度剖析 案例一:2021年某游戏外挂团伙刑事案 犯罪手法:逆向《王者荣耀》通信协议,修改战斗数据包 技术细节:Hook libil2cpp.so的SendPacket函数 量刑依据:非法经营罪&#xff…...

用AI学编程4——swift学习1

一个swift文件, 整理出swift从入门到精通的所有知识点, 给出注释, 给出这样的swift文件 以下是一个整合了 Swift 从入门到精通的主要知识点的 Swift 文件,包含了基础语法、面向对象编程、异常处理、集合框架、多线程、Lambda 表达…...

数据集构建与训练前准备

训练数据集目录结构与格式 作者笨蛋学法,先将其公式化,后面逐步自己进行修改,读者觉得看不懂可以理解成,由结果去推过程,下面的这个yaml文件就是结果,我们去推需要的文件夹(名字可以不固定,但是…...

在大型语言模型的提示词设计中,system、user和assistant三个角色的区别与联系

在大型语言模型的提示词设计中,system、user和assistant三个角色承担不同的功能,其区别与联系如下: 1. 角色定义与功能 system(系统指令) 作用:设定模型的整体行为、角色定位和任务框架。例如,“你是一位专业的科技作家”或“仅回答与医疗相关的问题”。特点:在多轮对话…...

Zabbix监控进程报警(Zabbix Monitoring Process Alarm)

zabbix监控进程占cpu、内存、磁盘RAID情况 1、cpu达到90%时报警 名称: cpu user percent gt 90% 表达式&#xff1a;{Template OS Linux:system.cpu.util[,idle].avg(1m)}<10 2、内存达到80%时报警 配置—主机(选择监控主机)—监控项—创建监控项 1、创建监控项 名称&…...

p5.js:sound(音乐)可视化,动画显示音频高低变化

本文通过4个案例介绍了使用 p5.js 进行音乐可视化的实践&#xff0c;包括将音频振幅转化为图形、生成波形图。 承上一篇&#xff1a;vite&#xff1a;初学 p5.js demo 画圆圈 cd p5-demo copy .\node_modules\p5\lib\p5.min.js . copy .\node_modules\p5\lib\addons\p5.soun…...

HAL库常用函数

一、通用函数 系统初始化&#xff1a; HAL_Init(): 初始化HAL库和系统时钟&#xff08;调用前需配置系统时钟源&#xff09;。 HAL_Delay(uint32_t Delay): 毫秒级阻塞延时&#xff08;基于SysTick定时器&#xff09;。 HAL_GetTick(): 获取系统运行时间&#xff08;毫秒计数…...

【Zinx】Day5-Part3:Zinx 的连接管理

目录 Day5-Part3&#xff1a;Zinx 的连接管理创建连接管理模块将连接管理模块集成到 Zinx 当中将 ConnManager 集成到 Server 当中在 Connection 的工厂函数中将连接添加到 ConnManagerServer 中连接数量的判断连接的删除 补充&#xff1a;连接的带缓冲发包方式补充&#xff1a…...

C语言:6.20字符型数据练习题

编写程序,输人一行数字字符(用回车结束),每个数字字符 的前后都有空格。 把这一行中的数字转换成一个整数。 例如,若输入(<CR>代表 Enter键):2 4 8 3<CR>则输出 整数:2483。 #include <stdio.h>int main() {char ch;int number 0;printf("请输入一行…...

SpringBoot Test详解

目录 spring-boot-starter-test 1、概述2、常用注解 2.1、配置类型的注解2.2、Mock类型的注解2.3、自动配置类型的注解2.4、启动测试类型的注解2.5、相似注解的区别和联系 3、SpringBootTest和Junit的使用 3.1、单元测试3.2、集成测试 4、MockMvc 4.1、简单示例4.2、自动配置4…...

CDefView::_GetPIDL函数分析之ListView_GetItem函数的参数item的item.mask 为LVIF_PARAM

CDefView::_GetPIDL函数分析之ListView_GetItem函数的参数item的item.mask 为LVIF_PARAM 第一部分&#xff1a; 1: kd> t SHELL32!CDefView::_GetPIDL: 001b:77308013 55 push ebp 1: kd> dv this 0x00000015 i 0n21 …...

Android Retrofit 框架注解定义与解析模块深度剖析(一)

一、引言 在现代 Android 和 Java 开发中&#xff0c;网络请求是不可或缺的一部分。Retrofit 作为 Square 公司开源的一款强大的类型安全的 HTTP 客户端&#xff0c;凭借其简洁易用的 API 和高效的性能&#xff0c;在开发者社区中广受欢迎。Retrofit 的核心特性之一便是通过注…...

项目上传到Gitee过程

在gitee上新建一个仓库 点击“克隆/下载”获取仓库地址 电脑上要装好git 在电脑本地文件夹右键“Git Bash Here” 依次执行如下命令 git init git remote add origin https://gitee.com/qlexcel/stm32-simple.git git pull origin master git add . git commit -m ‘init’…...

DeepSeek R1在医学领域的应用与技术分析(Discuss V1版)

DeepSeek R1作为一款高性能、低成本的国产开源大模型,正在深刻重塑医学软件工程的开发逻辑与应用场景。其技术特性,如混合专家架构(MoE)和参数高效微调(PEFT),与医疗行业的实际需求紧密结合,推动医疗AI从“技术驱动”向“场景驱动”转型。以下从具体业务领域需求出发,…...

数学之快速幂-数的幂次

题目描述 给定三个正整数 N,M,P&#xff0c;求 输入描述 第 1 行为一个整数 T&#xff0c;表示测试数据数量。 接下来的 T 行每行包含三个正整数 N,M,P。 输出描述 输出共 T 行&#xff0c;每行包含一个整数&#xff0c;表示答案。 输入输出样例 示例 1 输入 3 2 3 7 4…...

git subtree管理的仓库怎么删除子仓库

要删除通过 git subtree 管理的子仓库&#xff0c;可以按照以下步骤操作&#xff1a; 1. 确认子仓库路径 首先确认要删除的子仓库的路径&#xff0c;假设子仓库路径为 <subtree-path>。 2. 从主仓库中移除子仓库目录 使用 git rm 命令删除子仓库的目录&#xff1a; …...

学习资料电子版 免费下载的网盘网站(非常全!)

我分享一个私人收藏的电子书免费下载的网盘网站&#xff08;学习资料为主&#xff09;&#xff1a; link3.cc/sbook123 所有资料都保存在网盘了&#xff0c;直接转存即可&#xff0c;非常的便利&#xff01; 包括了少儿&#xff0c;小学&#xff0c;初中&#xff0c;中职&am…...

SpringMVC-全局异常处理

文章目录 1. 全局异常处理2. 项目异常处理方案2.1 异常分类2.2 异常解决方案2.3 异常解决方案具体实现 1. 全局异常处理 问题&#xff1a;当我们在SpingMVC代码中没有对异常进行处理时&#xff0c;三层架构的默认处理异常方案是将异常抛给上级调用者。也就是说Mapper层报错会将…...

基于Spring Boot的宠物健康顾问系统的设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导&#xff0c;欢迎高校老师/同行前辈交流合作✌。 技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;…...

【Linux内核系列】:深入理解缓冲区

&#x1f525; 本文专栏&#xff1a;Linux &#x1f338;作者主页&#xff1a;努力努力再努力wz ★★★ 本文前置知识&#xff1a; 文件系统以及相关系统调用接口 输入以及输出重定向 那么在此前的学习中&#xff0c;我们了解了文件的概念以及相关的系统调用接口&#xff0c;并…...

Python开发Scikit-learn面试题及参考答案

目录 如何用 SimpleImputer 处理数据集中的缺失值? 使用 StandardScaler 对数据进行标准化的原理是什么?与 MinMaxScaler 有何区别? 如何用 OneHotEncoder 对类别型特征进行编码? 解释特征选择中 SelectKBest 与 VarianceThreshold 的应用场景。 如何通过 PolynomialFe…...

~(取反)在算法竞赛中的常见用法和注意事项

在算法竞赛中&#xff0c;取反符号 ~ 主要用于按位取反操作&#xff0c;其功能是对整数的二进制表示逐位取反&#xff08;0 变 1&#xff0c;1 变 0&#xff09;。以下是 ~ 在算法竞赛中的常见用法和注意事项&#xff1a; 1. 按位取反的基本用法 ~ 对整数的二进制表示进行取反…...

C++ MySQL 常用接口(基于 MySQL Connector/C++)

C MySQL 常用接口&#xff08;基于 MySQL Connector/C&#xff09; 1. 数据库连接 接口&#xff1a; sql::mysql::MySQL_Driver *driver; sql::Connection *con;作用&#xff1a; 用于创建 MySQL 连接对象。 示例&#xff1a; driver sql::mysql::get_mysql_driver_insta…...

本地部署 OpenManus 保姆级教程(Windows 版)

一、环境搭建 我的电脑是Windows 10版本&#xff0c;其他的没尝试&#xff0c;如果大家系统和我的不一致&#xff0c;请自行判断&#xff0c;基本上没什么大的出入啊。 openManus的Git地址&#xff1a;https://github.com/mannaandpoem/OpenManus 根据官网的两种安装推荐方式如…...

【Pandas】pandas Series compare

# Pandas2.2 Series ## Computations descriptive stats |方法|描述| |-|:-------| |Series.compare(other[, align_axis, ...])|用于比较两个 Series| ### pandas.Series.compare pandas.Series.compare 方法用于比较两个 Series&#xff0c;并返回一个包含差异的 DataFram…...