- 博客(9)
- 收藏
- 关注
原创 【嵌入式学习笔记】ARM汇编语言
ARM汇编语言由指令、伪操作和伪指令组成,用于编写高效嵌入式程序。程序结构包括数据段(.data)、代码段(.text)及段对齐、全局符号声明等。伪操作如.data、.global、ALIGN等控制汇编过程,不生成机器码。支持与C语言混合编程:C中用__asm嵌入汇编,汇编可调用C函数或被C调用,均需遵循AAPCS标准,确保参数传递与寄存器使用规范。汇编与C协同开发提升性能与灵活性。
2026-10-05 09:05:46
226
原创 【嵌入式学习笔记】ARM指令集和寻址方式
ARM指令系统支持多种寻址方式:立即寻址(操作数直接嵌入指令)、寄存器寻址(操作数在寄存器中)、寄存器移位寻址(读寄存器时自动移位)、寄存器间接寻址(寄存器存地址,访问内存)、基址加偏址寻址(支持数组、结构体访问)、块拷贝寻址(批量存取寄存器)、堆栈寻址(基于SP的满递减栈)和相对寻址(以PC为基址,实现位置无关跳转与加载)。
2026-10-03 12:57:52
303
原创 【嵌入式学习笔记】ARM的总线和流水线
AMBA是分层总线架构,包含AXI(高性能)、AHB(中高速低延迟)和APB(低速低功耗)三类,适用于不同场景。AM64x/AM243x采用多级交换网络,实现带宽隔离与实时路径保障,支持可配置内存分区。流水线技术提升执行效率,从ARM7的三级到Cortex-A53的8级双发射流水线,兼顾性能与实时性,确保系统高效稳定运行。
2026-10-01 13:11:09
345
原创 【嵌入式学习笔记】ARM的存储和中断控制
ARM处理器支持多种数据类型,包括8/16/32/64位整数、浮点(半/单/双精度)及NEON向量。存储格式可配置为大端或小端。内存层次结构从快到慢依次为寄存器、Cache、TCM、SRAM、DDR和Flash。异常分为三类,通过固定向量表跳转处理,优先级由高到低为Reset、FIQ、IRQ、DataAbort、PrefetchAbort、Undefined、SWI。
2026-09-30 09:41:16
278
原创 【嵌入式学习笔记】ARM的处理模式和寄存器
ARM处理器支持ARM与Thumb两种指令状态,复位后默认进入ARM状态。Cortex系列基于不同架构,如A53支持AArch64/AArch32,M4F仅支持Thumb-2。处理器有7种(Cortex-A53为9种)运行模式,通过CPSR和SPSR管理状态切换与异常处理。寄存器如SP、LR、PC用于栈操作、返回地址与程序控制,分组寄存器保障模式切换时上下文安全。不同内核模式简化程度各异,适用于从通用计算到实时控制的多样化场景。
2026-09-27 17:42:33
205
原创 【嵌入式学习笔记】Arm绪论
Arm公司专注研发高效RISC架构IP核,授权给厂商用于芯片设计,推动ARM技术广泛应用于移动设备、嵌入式系统等领域。其Cortex系列处理器涵盖高性能(A)、实时控制(R)、低功耗(M)三类,适配多场景。以AM64x/AM243x为例,集成Cortex-A53、R5F与M4F异构多核,实现性能与能效平衡。ARM采用精简指令集,支持load-store架构与固定指令格式,兼顾高性能与低功耗,成为全球最成功的RISC架构之一。
2026-09-26 11:09:09
202
原创 【C++】线程
线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一个线程就是一个“执行流”,同一进程中的多个线程之间可以并发执行。线程本身不拥有系统资源,只拥有一点在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。线程同步是确保多个线程在并发访问共享资源时,能够正确地协调它们之间的执行顺序,以避免数据竞争和不一致性的重要机制。当多个线程同时访问和修改同一内存区域(即共享资源)时,如果没有适当的同步机制,就可能发生数据竞争,导致程序出现不可预测的行为和结果。
2024-05-16 13:10:36
1052
原创 【C++】lambda表达式
Lambda表达式(也称为λ表达式)是一种简洁地表示可调用对象(如函数或函数对象)的语法。它允许你快速定义一个可以在需要函数对象的任何地方使用的匿名函数。lambda表达式是学习C++一个绕不去的知识,无论是在面试中还是实际开发中都会涉及到很多,理解掌握它是很重要的。
2024-05-15 13:20:24
1271
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1