1.11.ARM的37个寄存器详解

ARM处理器含有37个寄存器,这些寄存器包含以下两类:

1. 31个通用寄存器:包括程序计数器PC等,都是32位的寄存器。

2. 6个状态寄存器


下面这幅图就是ARM中的 37 个寄存器:




下面这幅图是 7种工作模式下每个模式下的寄存器列表:


综上:

* ARM共有37个寄存器,每个寄存器都是32位的长度。

* 37个寄存器中30个为“通用型”,1个固定用作PC,一个固定用作CPSR,5个固定用作5种异常模式下的SPSR。


下面说一下CPSR程序状态寄存器:


这里我主要记住高四位:

1.条件标志位 

-N: Negative result from ALU

 -Z: Zero result from ALU

 -C: ALU operation Carried out (进位/借位)

 -V: ALU operation overflowed (溢出)

* N=1时,说明运算的结果为负数,N=0时,说明运算的结果为正数或零。

* Z=1时,说明运算的结果为0,Z=0时,说明运算的结果为非0。

* C:

 - 加法运算(包括CMP):当运算结果产生了进位时(无符号数溢出),C=1,否则为0。

 - 减法运算(包括CMP):当运算结果产生了借位时(无符号数溢出),C=0,否则C=1。

 - 对于包含移位操作的非加减指令操作时,C为移除值的最后一位。

 - 对于其它的非加减指令,C的值通常不变。

* V:

 - 对于加减法运算指令,当操作数和运算结果为二进制的补码表示的带符号数时,V=1表示符号位溢出

 - 对于其它的非加减法指令,V的值通常不变。


2.Q位:

* 在ARM V5及以上的版本的E系列处理器中,Q标识位指示增强的DSP运算指令是否发生了溢出,在其它版本的处理器中,Q未定义。


3.J位:

* 仅ARM 5TE/J 架构支持

* J=1时,处理器处于Jazelle状态


4.中断禁止位:

* I=1,禁止IRQ

* F=1,禁止FIQ


5.T位:

* 仅ARM xT架构支持

* T=0,处理器处于ARM状态

* T=1,处理器处于Thumb状态


6.Mode位:

* 处理器工作模式选择位


注意:

* CPSR中的各个位表明了CPU的某个状态信息,这些信息和后面我们用的汇编指令息息相关。

* CPSR的I、F位和开中断、关中断有关。

* CPSR的Mode位决定了CPU的工作模式,在uBoot代码中会使用汇编代码进行设置。


PC(R15)程序控制寄存器:

* PC(Program Control Register)为程序指针,PC指向哪里,CPU就会指向哪条指令(所以程序跳转时就是把目标地址代码放到PC中)。

* 整个CPU中只有一个PC(CPSR也只有一个,但SPSR有5个)。





memoryanalyzer-1.11.0.20201202是一款用于分析Java应用程序内存使用情况的工具。如果您想要下载这个工具,可以按照以下步骤进行操作。 首先,您需要在网络上搜索memoryanalyzer-1.11.0.20201202的官方下载网址。通常,您可以在Eclipse官方网站上找到这个工具的下载链接。 一旦进入官方网站,您可以在网站的搜索栏中输入"memoryanalyzer-1.11.0.20201202",以便快速定位到正确的下载页面。一旦找到了该工具的下载页面,您可以点击相关链接进入下载页面。 在下载页面上,您可能会看到不同的下载选项,通常提供不同操作系统的安装包。根据您的操作系统选择适当的下载选项并点击下载按钮。 下载完成后,您可以将下载的安装包保存到您选择的本地文件夹中。请确保您选择一个易于访问的位置,以便在安装过程中轻松找到该文件。 一旦下载完成,您可以在本地文件夹中找到安装包,双击运行并按照安装程序的指示进行安装。安装过程可能会要求您选择安装目录和其他相关设置。 安装完成后,您可以在电脑的开始菜单、快捷方式或安装目录中找到memoryanalyzer-1.11.0.20201202的可执行文件。双击运行该文件,即可启动这个工具。 总结而言,要下载memoryanalyzer-1.11.0.20201202,您需要在官方网站上找到下载页面,选择适合您操作系统的安装包,并通过安装程序进行安装。安装完成后,您就可以使用这个工具来分析Java应用程序的内存使用情况了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值