ARM7TDMI寄存器组织
来源:互联网 发布:linux查看挂载硬盘命令 编辑:程序博客网 时间:2024/05/01 05:42
共有37个寄存器,其中31个通用寄存器,6个状态寄存器,它们全部是32bit宽。任何时候,通用寄存器R0~R14,PC(R15)和一个或两个状态寄存器(CPSR)都是可以访问的。
1.不分组寄存器R0~R7
R0~R7是不分组寄存器。所有处理器模式下,都存取一样的32位元寄存器。它们是真正的通用寄存器,没有架构所隐含的特殊用途。
2.分组寄存器R8~R14
R8~R14是分组寄存器。它们每一个存取的实体寄存器取决于当前处理器模式。若要存取特定的实体寄存器而不依赖当前的处理器模式,则要使用规定的名字。寄存器R8~R12各有两组实体寄存器:一组为FIQ模式,另一组为除FIQ以外的所有模式。只是使用R8~R14来简单地处理中断。寄存器R13,R14各有6各分组的实体寄存器。1个用于使用者模式和系统模式,即System(sys,执行特权作业系统工作)和User(usr,正常程序执行模式)。其它5个用于5种例外模式,即FIQ(fiq,支援高速资料般移或通道处理),IRQ(irq,用于通用中断处理),Supervisor(svc,作业系统保护模式),Abort mode(abt,实现虚拟记忆体或记忆体保护)和Undefined(und,支援硬体辅助运算器的软体仿真)。
寄存器R13通常用作堆栈指针,称为SP(Stack Pointer),每种例外模式都有自己的R13。寄存器R14用作连接寄存器LR。当执行BL子程序调用指令时,可从R14得到R15(程序计数器的备份),其它情况,R14用作通用寄存器,每一种运行模式,都可用R14保存子程序的返回地址,又将R14的值拷贝回PC,完成子程序的调用返回。
R15即程序计数器PC。
3.程序状态寄存器
有一个CPSR(Current Program Status Register),在所有处理器模式下都可以存取当前的程序状态寄存器CPSR,CPSR包含条件码标志,中断禁止位元,当前处理器模式以及其它状态和控制资讯。有5个SPSR(Saved Program Status Register),每种例外模式都有一个程序状态保存寄存器SPSR,SPSR用于保留CPSR的状态。
32-bits的程序状态寄存器可以分为4个域,bit[31:24]为条件符号位域,用f表示;bit[23:16]为状态位域,用s表示;bit[15:8]为扩充位域,用x表示;bit[7:0]为控制域,用c表示。
- ARM7TDMI寄存器组织
- 寄存器组织
- ARM寄存器组织
- ARM寄存器组织
- ARM CPU 寄存器组织
- 3.2 ARM 寄存器组织
- 8086寄存器组织结构
- ARM处理器的寄存器组织
- arm 工作模式 寄存器组织
- ARMv5 架构寄存器的组织
- 汇编速查-IA32寄存器组织
- 汇编(二)——存储器组织与段寄存器
- ARM9_S3C2440学习(二)ARM状态下的寄存器组织
- Flash Download failed-ARM7TDMI
- LPC22110--ARM7TDMI笔记(一)
- 移植UCOS-II到ARM7TDMI
- (1)ARM7TDMI-S内核
- arm7tdmi的i2c驱动注释
- Google强大的翻译功能
- 被鄙视了,呵呵
- 高手请进,求校园一卡通中圈存模块的代码!!!
- ADO连接数据库
- How To Default To Search Companion With Windows Desktop Search
- ARM7TDMI寄存器组织
- 硅谷之行 (22) 品酒在Napa I
- 程序员找女朋友辛苦历程一
- 任务栏按钮分组后显示的名字不同问题分析
- 查询全球IP地址信息
- repeater实现多列显示_ASP.NET技巧
- mysql -时间函数
- waitpid使用实例
- LCC编译器的源程序分析(19)全局函数的定义