R0~R7:在所有模式下对应的物理寄存器都是相同的,在中断或者异常处理程序中需要对这几个寄存器的数据进行保存;

R8~R12:fiq模式下一组物理寄存器,其余模式下一组物理寄存器;

R13、R14:用户、系统模式共享一组寄存器,其余每个模式各一组寄存器。

R13(SP指针)即栈指针,系统初始化时需对所有模式的SP指针赋值,MCU工作在不同模式下时,栈指针会自动切换;

R14:1、调用子程序时用于保存调用返回地址,2、发生异常时用于保存异常返回地址

R15(程序计数器PC):可以用作通用寄存器(未验证,一旦使用后果自负),部分指令在使用R15时有特殊限制(暂不清楚是哪些指令);

CPSR(当前程序状态寄存器):所有模式下可读写

条件标志位如下

N:Negative,负标志

Z:Zero,0

C:Carry,进位

V:Overflow,溢出

中断标志位如下:

I:1表示禁止IRQ中断响应,0表示允许IRQ中断响应

F:1表示禁止FIQ中断响应,偶表示允许FIQ中断响应

ARM/Thumb控制标志位:

T:0表示执行32 bits的ARM指令,1表示执行16 bits的Thumb指令

模式控制位M0~M4

以上资料来源:嵌入式系统设计师教程,清华大学出版社

ARM 通用寄存器说明相关推荐

  1. ARM通用寄存器及状态寄存器详解

    关注.星标公众号,直达精彩内容 素材来源:https://blog.csdn.net/qq_34430371/article/details/125820927 整理:技术让梦想更伟大 | 李肖遥 笔 ...

  2. ARM通用寄存器和特殊寄存器

    CM3拥有通用寄存器组R0~R15和一些特殊寄存器 通用寄存器组R0~R15 R13:SP堆栈指针寄存器 功能:指向堆栈的栈顶 详解: 1)异常模式发生时,程序把通用寄存器压入堆,SP一直指向栈顶的位 ...

  3. S5PV210体系结构与接口02:ARM编程模型 汇编指令

    目录 1. ARM的基本设定 1.1 ARM数据类型 1.1.1 基本数据类型 1.1.2 浮点数据类型 1.1.3 存储器大小端 1.2 支持的指令集 2. Cortex-A8编程模型 2.1 处理 ...

  4. ARM编程模式和7钟工作模式

    一. ARM的基本设定 1.1. ARM 采用的是32位架构 1.2. ARM约定: a. Byte : 8 bits b. Halfword :16 bits (2 byte) c. Word : ...

  5. linux arm寄存器,ARM寄存器总结

    ARM处理器共有37个寄存器: 1) 31个通用寄存器,包括程序计数器(PC).这些寄存器都是32位的: 2)6个状态寄存器.这些寄存器也是32位的,但是只使用了其中的12位. ARM通用寄存器 通用 ...

  6. ARM体系架构—ARMv7-A处理器模式及寄存器

    一.ARMv7-A处理器模式 ARMv7架构支持安全扩展,如果使能了安全扩展,ARMv7-A架构分为安全模式(Secure State)和非安全模式(Non-secure State)两个世界. 在非 ...

  7. ARM学习系列 ---- ARM NEON

    ARM学习系列 ---- ARM NEON 1 NEON概述 1.1 简介 NEON是指适用于Arm Cortex-A系列处理器的一种高级SIMD(单指令多数据)扩展指令集,可执行并行数据处理. 1. ...

  8. 重庆工商大学c语言实验一答案,重庆工商大学嵌入式实验考试题目答案 - 副本.doc...

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp计算机&nbsp>&nbsp嵌入式开发 重庆工商大学嵌入式实验考试题目答案 - 副本.doc ...

  9. IMX6ULL学习笔记(18)——GPIO中断

    一.中断简介 相比 STM32 的 NVIC,IMX6ULL 的中断控制系统更复杂,它的中断管理器使用的是 GIC V2,GIC V2 的实现方式与我们熟知的 NVIC 差别较大. 1.1 GIC G ...

最新文章

  1. boost::detail::sp_convertible相关的测试程序
  2. Ruby. Vs . Python
  3. Kafka架构设计:分布式发布订阅消息系统
  4. SNI: 实现多域名虚拟主机的SSL/TLS认证
  5. 你真的知道敏捷和迭代吗?
  6. 给mysql数据库设计编码_MYSQL数据库编码原理
  7. 偷源代码!还和前东家一起投标……最终被判 3 年
  8. css3 如何动态画一条直线_素描基础学习课:素描长直线的画法!把直线画直的关键!...
  9. SVN配置 svn:needs-lock commit提交后,图标为灰色,文件为只读。
  10. UVA12148 LA4214 Electricity【日期计算】
  11. Linux(CentOS7)虚拟机安装详解
  12. hinkPad T510系列主要机型对比
  13. SPDY协议 - v3
  14. html5怎么把图片置顶,html/css如何让图片上下居中(居中垂直)?
  15. 【从零开始的大数据学习】Flink官方教程学习笔记(一)
  16. cad app android,迷你CAD免费手机版
  17. 不能打开到主机的连接,在端口1521:连接失败的解决方法(修改远程桌面连接端口)
  18. 如何去掉“Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8” 提示,删环境变量都不好使
  19. Mingw使用HPSocket的包装类
  20. 【canvas系列】用canvas实现一个colorpicker(类似PS的颜色选择器)

热门文章

  1. 基于工厂智能化改造——数字孪生映射应用案例解析
  2. 杠杆炒股的两种操作方法
  3. HTML实时获取当前时间
  4. 未识别的网络 无internet
  5. 探索测试-大富翁KYM练习笔记
  6. 《Web安全渗透全套教程(40集)》学习笔记 | SQL注入攻击及防御
  7. 负载均衡之跑马竞赛算法
  8. 什么是openshift
  9. vue将页面html导出为pdf
  10. 如何keil4下面创建工程?