asp网站开发需要的基本条件,做广告牌子的电话,wordpress没有.htaccess,河南金城建设工程有限公司网站一.ARM7种状态以及每种状态的寄存器#xff1a; ARM 处理器共有 7 种不同的处理器模式#xff0c;在每一种处理器模式中可见的寄存器包括 15 个通用寄存器( R0~R14)、一个或两个(User和Sys不是异常模式#xff0c;没有spsr寄存器)状态寄存器#xff08;cpsr和spsr ARM 处理器共有 7 种不同的处理器模式在每一种处理器模式中可见的寄存器包括 15 个通用寄存器( R0~R14)、一个或两个(User和Sys不是异常模式没有spsr寄存器)状态寄存器cpsr和spsr、程序计数器( PC )。 从上图可以看到每一种CPU模式都有15个通用寄存器r0-r15)只是有一些是各种共用的有一些是私有的这里请大家记清楚这对于cpu各种模式切换很重要这是切换模式需要保存上下文的根本原因。
modedescriptionrestrictionUser Mode运行用户程序非特权模式 无法处理异常除非异常否则无法改变当前模式对系统资源的访问进行限制外设以及memorySVC Mode用于系统管理比如系统下的资源访问以及OS的调度管理可以通过软件触发特权模式 执行SVC指令可以进入到本异常复位之后进入该模式 正常行为软件触发到system Mode与用户模式共享所有寄存器特权模式不能通过异常进入正常行为软件触发Abort ModeData Abort或者Prefetch Abort前者是数据访问出错后面是取指令错误特权模式异常行为硬件检测到Undefined Mode指令相关的异常处理例如执行到未定义的指令特权模式(异常行为硬件检测到FIQ Mode特权模式处理快速中断正常行为硬件触发到IRQ Mode特权模式处理普通终端正常行为硬件触发到
二.通用寄存器介绍
通用目的寄存器R0-R7低组寄存器32bit16位thumb以及32位的thumb-2指令均可以访问 R0-R3一般作为参数传递如果参数再多则通过压栈的方式传递 R0、R1还会作为返回值进行传递如果是32位则是R0,64位则会用R0-R1
通用目的寄存器R8-R12高组寄存器32bit较少的16位thumb指令可以访问一般是 thumb-2指令访问。R11一般用作FP指针保存栈帧在加上编译选项时 见上篇文章下文SP、LR同理ARM学习 栈指针R13SP 指示当前栈所指位置。链接寄存器R14LR 保存程序返回地址。程序计数器R15PC 程序运行的当前位置。
下一章会详细介绍SP.FP.LR.PC