arm 的寄存器概述(8)

关于寄存器的概述。

带 三角形的是 这种模式下 独有的寄存器,也就是说,FIQ模式下与 SYstem/user 模式下,虽然都有r8 寄存器,但是不是一个东西。

r13 (SP ) 这是堆栈指针,

r15(PC ) 这是 code 的指针。

r14(LR ), 这个是比较重要的,主要用于 跳转, 在执行bl 的指令时,会自动的 将下一条指令存放到R14 中,这样,返回时, 直接 ,将LR的值给到PC就可以了。

cpsr :当前程序状态寄存器。

spsr : 备份的程序状态寄存器,当切换状态时,会自动把 cpsr 中的值,保存到spsr .

关于CPSR 的内容。

需要知道的是 最后的状态位。代表的是当前的程序在什么模式下。

T代表的是 thumb 态,还是arm 态。

I,F 分别代表是否 禁止 FIR, IRQ , 这个会用到。

最前面的 NZCV 为 条件位, 这个也是会用到的。

相关推荐
wa的一声哭了4 小时前
WeBASE管理平台部署-WeBASE-Web
linux·前端·网络·arm开发·spring boot·架构·区块链
Shylock_Mister4 小时前
ARM与x86交叉编译实战排错指南
linux·c语言·arm开发
ai_xiaogui13 小时前
Mac苹果版Krita AI一键安装教程:AIStarter+ComfyUI零基础部署全流程(X86/ARM双架构)
arm开发·人工智能·macos·comfyui·一键部署·ai绘画教程·kritaai
brave and determined1 天前
可编程逻辑器件学习(day22):“让ARM穿上FPGA的马甲“:赛灵思Zynq的命名哲学与技术革命
arm开发·嵌入式硬件·fpga开发·zynq·fpga设计·嵌入式设计·fpga开发流程
wa的一声哭了2 天前
Linux服务器配置ssh免密登陆多台服务器、服务器别名配置
linux·运维·服务器·网络·arm开发·python·ssh
蓁蓁啊2 天前
ARM交叉编译中编译与链接参数不一致导致的问题
开发语言·arm开发·嵌入式硬件
青柚~3 天前
【鲲鹏服务器麒麟系统arm架构部署docker】
服务器·arm开发·docker·架构
应用市场3 天前
ARM编译器深度解析:从Keil到VSCode的STM32开发之
arm开发·vscode·stm32
代码AI弗森3 天前
为什么 AI 推理天然更偏向 ARM(而不是 x86)
arm开发·人工智能
亿道电子Emdoor4 天前
【Arm】Encountered an improper argument
arm开发·stm32·单片机