您的位置 首页 被动

ARM处理器寄存器

1.1.1ARM处理器不同模式下寄存器CPU的模式不同,在其对应模式下可以使用的寄存器也不相同,如表3-2所示:表3-2ARM处理器模式下寄存器寄存…

1.1.1ARM处理器不同形式下寄存器

CPU的形式不同,在其对应形式下能够运用的寄存器也不相同,如表3-2所示:
表3-2 ARM处理器形式下寄存器

寄存器类别 寄存器在汇编中的称号 各形式下实践拜访的寄存器
用户 体系 办理 停止 未定义 中止 快中止
通用寄存器和程序计数器 R0(a1) R0
R1(a2) R1
R2(a3) R2
R3(a4) R3
R4(v1) R4
R5(v2) R5
R6(v3) R6
R7(v4) R7
R8(v5) R8 R8_fiq
R9(SB,v6) R9 R9_fiq
R10(SL,v7) R10 R10_fiq
R11(FP,v8) R11 R11_fiq
R12(IP) R12 R12_fiq
R13(SP) R13 R13_svc R13_abt R13_und R13_irq R13_fiq
R14(LR) R14 R14_svc R14_abt R14_und R14_irq R14_fiq
R15(PC) R15
状况寄存器 CPSR CPSR
SPSR SPSR_abt SPSR_abt SPSR_und SPSR_irq SPSR_fiq

其间R0~R7在一切形式下都能够运用的共有寄存器,R8~R12是快速中止形式下私有的寄存器,其它形式下不能运用,之所以叫其快速中止,是由于快速中止形式下,这几个私有寄存器里数据在形式切换时能够不必入栈保存。
除了用户形式和体系形式共用一组R13,R14,其他每种形式都私有自己的R13,R14,由于在每种形式下都有自己的栈空间用于碑文程序,在碑文程序过程中还要保存回来地址,这样能够确保在进入不同形式时,当时形式下栈空间不被损坏。比方:网卡由于数据抵达,产生了中止进入中止形式,在中止形式下有自己的中止处理例程(ISR),ISR在碑文时要用到栈空间,因而要运用R13,R14。中止处理完成后,回来用户形式下,要继续碑文被网卡中止信号中止的碑文程序。
用户形式和体系形式为什么要共用一组R13,R14呢?这是由于,在特权形式下能够自在切换作业形式,可是假如切换到用户形式下,就不能再切换到特权形式了,这是CPU为操作体系供给的维护机制,可是有的时分就需要切换到用户形式下去运用其R13,R14寄存器,比方当操作体系的进程进行上下文切换时,假如用户形式和体系形式共用一组寄存器,那么能够切换到体系形式下(体系形式是特权形式)进行操作。
一切R15和CPU一起只能处理一条指令,在取指时,有一个CPSR一共当时CPU的状况即可。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/beidong/264578.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们