- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.5.1 ARM状态下的寄存器组织(3) 寄存器R13 寄存器R13在ARM指令中常用作堆栈指针。 在用户应用程序的初始化部分,一般都要初始化每种模式下的R13 (R13_svc、R13_irq、R13_fiq、R13_abt和R13_und ),使其指向该运行模式的栈空间。 当程序的运行进入异常模式时,可以将需要保护的寄存器放入R13所指向的堆栈,而当程序从异常模式返回时,则从对应的堆栈中恢复,采用这种方式可以保证异常发生后程序的正常执行。 当前第30页\共有68页\编于星期四\22点 2.5.1 ARM状态下的寄存器组织(4) 寄存器R14 子程序连接寄存器(Subroutine Link Register)或链接寄存器LR。 子程序调用: 当执行BL(BLX)子程序调用指令时,R14中得到R15(程序计数器PC)的备份。 中断或异常: 对应的分组寄存器R14_svc、R14_irq、R14_fiq、R14_abt和R14_und用来保存R15的返回值。 当前第31页\共有68页\编于星期四\22点 2.5.1 ARM状态下的寄存器组织(5) 寄存器R15 程序计数器PC。 寄存器R15用作程序计数器(PC)。在ARM状态下,位[1:0]为0,位[31:2]用于保存PC;在Thumb状态下,位[0]为0,位[31:1]用于保存PC。 由于ARM体系结构采用了多级流水线技术,对于ARM指令集而言,PC总是指向当前指令的下两条指令的地址,即PC的值为当前指令的地址值加8个字节。 当前第32页\共有68页\编于星期四\22点 2.5.1 ARM状态下的寄存器组织(6) 当前程序状态寄存器 CPSR CPSR(Current Program Status Register) CPSR可在任何运行模式下被访问,它包括条件标志位、中断禁止位、当前处理器模式标志位,以及其他一些相关的控制和状态位。 备份的程序状态寄存器SPSR(Saved Program Status Register) ,当异常发生时,SPSR用于保存CPSR的当前值,从异常退出时则可由SPSR来恢复CPSR。 用户模式和系统模式不属于异常模式,他们没有SPSR,当在这两种模式下访问SPSR,结果是未知的。 当前第33页\共有68页\编于星期四\22点 2.5.1 ARM状态下的寄存器组织(7) CPSR 当前第34页\共有68页\编于星期四\22点 2.5.1 ARM状态下的寄存器组织(8) 条件码标志(Condition Code Flags) N、Z、C、V:条件码标志位。可被算术或逻辑运算的结果所改变,并且可以决定某条指令是否被执行。 在ARM状态下,绝大多数的指令都是有条件执行的。 在Thumb状态下,仅有分支指令是有条件执行的。 当前第35页\共有68页\编于星期四\22点 2.5.1 ARM状态下的寄存器组织(9) 在ARM v5及以上版本的E系列处理器中,用Q标志位指示增强的DSP运算指令是否发生了溢出。在其他版本的处理器中,Q标志位无定义。 Q 对于加/减法运算指令,当操作数和运算结果为二进制的补码表示的带符号数时,V=1表示符号位溢出。 对于其他的非加/减运算指令,C的值通常不改变。 V 加法运算(包括比较指令CMN):当运算结果产生了进位时(无符号数溢出),C=1,否则C=0。 减法运算(包括比较指令CMP):当运算时产生了借位(无符号数溢出),C=0,否则C=1。 对于包含移位操作的非加/减运算指令,C为移出值的最后一位。 对于其他的非加/减运算指令,C的值通常不改变。 C Z=1 表示运算的结果为零;Z=0表示运算的结果为非零。 Z N=1 表示运算的结果为负数;N=0 表示运算的结果为正数或零。 N 含 义 标志位 当前第36页\共有68页\编于星期四\22点 2.5.1 ARM状态下的寄存器组织(10) 控制位 CPSR的低8位(包括I、F、T和M[4:0])称为控制位,当发生异常时这些位可以被改变。如果处理器处于特权模式,这些位也可以由程序修改。 中断禁止位I、F: I=1 禁止IRQ中断(外部中断) F=1 禁止FIQ中断(快速中断) T标志位: T=1 Thumb状态 T=0 ARM状态 当前第37页\共有68页\编于星期四\22点 2.5.1 ARM状态下的寄存器组织(11) M[4:0]运行模式位:这些位决定了处理器的运行模式。 M[4:0] 处理器模式 可访问的寄存器 0b10000 用户模式 PC,CPSR,R0-R14 0b10001 FIQ模式 PC,CPSR, SPSR_fiq,R
您可能关注的文档
- 如何推进标准化管理演示文稿.ppt
- 药品质量管理技术第二章药品质量与质量管理详解演示文稿.ppt
- 聚光系统温压流结构及其安装.ppt
- 公共政策分析公共政策的本质构成与功能演示文稿.ppt
- 演示文稿关于虚拟团队.ppt
- 自然辩证法导读绪论详解演示文稿.ppt
- 季风对降水的影响演示文稿.ppt
- 红外光谱第三节详解演示文稿.ppt
- 时尚行业服装与配饰欧美市场概况.pptx
- 光污染演示文稿.ppt
- 初中英语人教版七年级上册第四单元Where is my schoolbag ! Section A .ppt
- 初中英语人教版七年级上册第四单元Where is my schoolbag Section B 2.ppt
- 初中英语人教版七年级下册 Unit 6 I'm watching TV. Section A 11a.pptx
- 注册土木工程师培训课件.ppt
- 初中生物济南版七年级上册第一章奇妙的生命现象 第三节生物学的探究方法.ppt
- 初中英语人教版七年级上册第四单元Where is my schoolbag Section B 2.pptx
- 注册安全工程师案例课件.ppt
- 初中物理人教版八年级上册第二章第4节噪声的危害和控制课件(共19张PPT).pptx
- 注册安全工程师王阳课件.ppt
- 初中数学青岛版八年级上2.4《线段的垂直平分线》课件(16张PPT).ppt
最近下载
- 核酸类药物PPT课件.pptx VIP
- 【2024届 普通类】智能科学与工程学院人工智能产业学院优秀应届本科毕业生(内招生)免试攻读研究生(普通类)推荐工作实施办法(试行).pdf VIP
- 《病理学实验》呼吸系统疾-教学课件(非AI生成).pptx VIP
- 科目三《私募股权投资基金(含创业投资基金)基础知识》.pdf VIP
- DB33_T 865-2022 农用钢架大棚设计与安装规范.docx
- 旅游服务投诉案例分析报告总结.pptx VIP
- 旅游服务投诉案例.pptx VIP
- 人教版初中、高中英语全部单词集合.pdf VIP
- 黑布林阅读初三7《金银岛》中文版.pdf
- 旅游服务心理学课件 项目六 沟通与投诉处理 任务二 巧妙处理旅游者的投诉.pptx VIP
原创力文档


文档评论(0)