首页 > 电路 > 电路分析 > arm8有多少寄存器,arm处理器总共有多少个通用寄存器

arm8有多少寄存器,arm处理器总共有多少个通用寄存器

来源:整理 时间:2023-03-05 01:00:53 编辑:亚灵电子网 手机版

本文目录一览

1,arm处理器总共有多少个通用寄存器

arm处理器总共有31个通用寄存器。ARM微处理器共有37个32位寄存器,其中31个为通用寄存器(R13和R13_svc不是同一个寄存器),6个为状态寄存器。但是这些寄存器不能被同时访问,具体哪些寄存器是可以访问的,取决ARM处理器的工作状态及具体的运行模式。但在任何时候,通用寄存器R14~R0、程序计数器PC、一个状态寄存器都是可访问的。

arm处理器总共有多少个通用寄存器

2,arm寄存器组成多少状态寄存器

因为ARM有7种处理器模式,(用户usr、中断irq、快中断fiq、管理svc、中止abt、未定义und、系统sys),37个寄存器中是这样分的:R0~R7是通用的,就是其中模式都可以用;R8~R12分两组,就是有10个了,快中断模式用一组(R8_fiq~R12_fiq),其余的六种模式用一组(R8~R12);R13、R14分六组,就是有12个,其中用户模式和系统模式共用一组(R13~R14),其余的5种模式各有一组【R13_irq~R14_irq】【R13_fiq~R14_fiq】【R13_svc~R14_svc】【R13_abt~R14_abt】【R13_und~R14_und】;R15为七种模式共用;程序状态寄存器:CPSR是共用的,SPSR也是分了组的,但是只有5个,因为在用户模式和系统模式下不需要SPSR。所以ARM状态下每种模式是18个可用(用户模式和系统模式是17个)。Thumb状态类推。因为Thumb状态下没有用到R8-R12寄存器。

arm寄存器组成多少状态寄存器

3,译 ARMv8A架构基础之寄存器

ARMv8-A提供了31个64位的通用寄存器,始终可以访问,并且可以在所有异常级别访问。 在AArch64执行状态下,每个寄存器(X0-X30)都是64位宽度。 宽度增加有助于减少大部分应用程序中的寄存器压力。 每个64位通用寄存器(X0 - X30)也有一个32位的格式(W0 - W30)。 32位W寄存器构成相应的64位X寄存器的下半部分。 即W0形成X0的低位字,W1形成X1的低位字。 从W寄存器中读取时,忽略对应的X寄存器的高32位并且保持他们不变。 写入W寄存器将X寄存器的高32位设置为零。 因此,将0xFFFFFFFF写入W0会将X0设置为0x00000000FFFFFFFF。 特殊寄存器 除了31个(X0到X30)个ARMv8-A核心寄存器之外,还有几个特殊的寄存器。 在AArch64中执行时,对于每个异常级别,异常返回状态将保存在以下专用寄存器中: 下表按异常级别标识特殊寄存器: 异常级别的特殊寄存器 程序调用标准(PCS)还定义了一个专用的帧指针(FP),通过可靠地展开堆栈,它使调试和调用关系图分析变得更加容易。 零寄存器 零寄存器的名字暗示着什么。 零寄存器忽略所有对它的写操作,并且所有对它的读操作都返回0.您可以在大多数(但不是全部)指令中使用零寄存器。 堆栈指针 堆栈指针(SP)是一个指向堆栈顶部的寄存器。 选择使用的堆栈指针在某种程度上与“异常”级别是分开的。 默认情况下,发生异常时会为目标异常级别选择堆栈指针(SP_ELn)。 例如,发生EL1异常时选择SP_EL1。 每个异常级别都有自己的堆栈指针。 但是,当在AArch64中,异常级别的不是E0时,处理器可以使用下面中的任何一种: SP不能被大多数指令引用。 但是,一些算术指令,例如ADD指令,可以读写当前的堆栈指针来调整函数中的堆栈指针。 例如: 程序计数器 程序计数器(PC)保存当前的程序地址。 它不能被数字引用(就像通用寄存器文件的一部分一样),因此不能用作算术指令的源或目的地,或作为加载和存储指令的基址,索引或转移寄存器。 那些可以读取PC的指令是那些具有计算PC相对地址功能的指令(ADR,ADRP,字面加载和直接分支),以及在链接寄存器中存储返回地址的“分支并链接”指令(BL和BLR)。 修改程序计数器的唯一方法是使用分支,异常生成和异常返回指令。 使用计算PC相对地址的指令读取PC时,读取的PC值是该指令的地址。 与ARMv7-A不同,不存在4或8字节的隐含偏移量。 异常链接寄存器(ELR) 异常链接寄存器保存要在异常后返回的地址。 https://developer.arm.com/products/architecture/a-profile/docs/100878/latest/registers

译 ARMv8A架构基础之寄存器

文章TAG:arm8有多少寄存器多少寄存器arm

最近更新

  • ao4435多少钱,84消毒液多少钱一瓶ao4435多少钱,84消毒液多少钱一瓶

    84消毒液多少钱一瓶2,求大功率开关管工作电压12V启动电流达到100A左右工作电流是810A3,OCTO手表都多少钱4,移动电源IC的MOS管5,这个烟多少钱一盒6,怎么用万用表检测场效应管的好坏7,这个555.....

    电路分析 日期:2024-04-10

  • 戴维南电路题,电路的戴维宁定理戴维南电路题,电路的戴维宁定理

    在断开的电路中,找到剩余短路的戴维宁(诺顿)等效电路。解决方法:首先,找出电阻R从电路断开后的戴维宁等效电路,求解戴维南定理的基本步骤如下:戴维南等效是关于电压源的等效,因此,第一步:将需.....

    电路分析 日期:2024-04-10

  • 电阻精度的测量电路,高精度电阻测量电路电阻精度的测量电路,高精度电阻测量电路

    测量电阻时应注意以下几点:第一,测量前先切断电路!测量被测电阻时,应断开被测线路的电源,否则会影响测量精度,严重时还会损坏万用表。例如,为了测量汽车中电器或线路的电阻,可以断开电池,输入.....

    电路分析 日期:2024-04-10

  • 开发芯片要多少钱,做芯片大约能要多少钱啊开发芯片要多少钱,做芯片大约能要多少钱啊

    做芯片大约能要多少钱啊现在一般来说都在5000以上做芯片要一定批量。贵的多得是你要做什么芯片。2,做一块基因芯片要花多少钱看什么公司的,有三千多到六七千都有。看做什么项目了,佳学基.....

    电路分析 日期:2024-04-10

  • cx1084稳压多少伏,cx1084ADJ电流是多少cx1084稳压多少伏,cx1084ADJ电流是多少

    cx1084ADJ电流是多少此为最大输出5A的LDO这个应当是1个产品的型号2,CX1084是什么块电源稳压器,3.3V和5V的比较常用-------------------------3,电子式仪表稳压器的输出电压一般为多少伏.....

    电路分析 日期:2024-04-10

  • 电压保护器的接线如何连接电涌保护器电压保护器的接线如何连接电涌保护器

    两相漏电保护器接线,电涌保护器的正确接线方法是选择与电涌保护器额定电流和电压相匹配的插座。漏电保护器用于支路保护时,电涌保护器的正确接线方法,使用正确的电缆和连接器:选择合适的.....

    电路分析 日期:2024-04-10

  • boost电路的频率能达到多少,为什么boost电路的pwm波占空比达到一定值就会短路boost电路的频率能达到多少,为什么boost电路的pwm波占空比达到一定值就会短路

    本文目录一览1,为什么boost电路的pwm波占空比达到一定值就会短路2,sy7711芯片boost电路效率3,BOOST电路中的PWM频率如何设置跟电感和开关管的关系如何4,boost电路5,980ti145g超1070是指的bo.....

    电路分析 日期:2024-04-10

  • 电容器组的耐压是多少,高压电容器组总容量大于多少时必须采用电容器组的耐压是多少,高压电容器组总容量大于多少时必须采用

    高压电容器组总容量大于多少时必须采用2,串联后的电容器耐压是多少3,什么是电容器组的耐压值和电容器耐压值有什么不同4,电容器的电容的耐压值5,电容的容量和耐压6,电阻和电容的耐压是多少7.....

    电路分析 日期:2024-04-09