汇编对sp指针进行修改_【ARM】内核寄存器以及常用汇编指令分析

本文详细介绍了ARM Cortex-M3的架构组件,特别是寄存器组,如R13作为堆栈指针SP的重要角色。文章探讨了汇编指令集,包括跳转、数据处理和PSR处理指令,并通过函数调用的汇编代码分析了堆栈操作。同时,阐述了CM3的操作模式和复位序列,以及栈帧的概念。
摘要由CSDN通过智能技术生成

6d5cc746b32ab0250189bb7664924099.png

ARM内核(Cortex-M3)由ALU,NVIC,Register Banked,Fetch and Decoder Unit,Interfaces组成。

其中的寄存器相当于CM3自己的内存,存取速度非常快。用于暂存数据处理中的过程数据和状态。

本文先介绍CM3的寄存器组,以及ARM汇编指令。最后通过反汇编例子来分析实际的汇编代码。

1 寄存器组

CM3 拥有通用寄存器 R0‐R15 以及一些特殊功能寄存器。

1ab1e2c9f90c5071b3f4bed3df79f295.png

62571f3412c329ff00c835d501dc7e68.png

R13,堆栈指针(Stack Pointer)

R13寄存器中存放的是堆栈的栈顶指针,CM3中有两个堆栈指针,也就支持两个堆栈。分别是:主堆栈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值