历史上的今天
返回首页

历史上的今天

今天是:2025年02月20日(星期四)

正在发生

2020年02月20日 | ARM学习笔记1——Arm寄存器与模式的关系

2020-02-20 来源:eefocus

ARM微处理器上有37个32位的寄存器,其中有6个状态寄存器(一个CPSR,5个SPSR),其它31个为通用寄存器。在ARM的不同模式下,可以访问的物理寄存器是不同,如下图所示:

从图中可知,用户模式和系统模式使用相同的物理寄存器,R0-R15,CPSR,共17个物理寄存器;


FIQ模式(快速中断请求模式)中:R0-R7,R15,CPSR是和用户模式相同的物理寄存器,R8-R14是FIQ模式专有的;


IRQ模式(中断请求模式)中:R0-R12,R15,CPSR和用户模式共用相同的物理寄存器,R13,R14,SPSR是IRQ模式专有的


SVC模式(操作系统保护模式)中:R0-R12,R15,CPSR和用户模式共用相同的物理寄存器,R13,R14,SPSR是SVC模式专有的


Undef模式(未定义模式)中:R0-R12,R15,CPSR和用户模式共用相同的物理寄存器,R13,R14,SPSR是Undef模式专有的


Abort模式(终止模式)中:R0-R12,R15,CPSR和用户模式共用相同的物理寄存器,R13,R14,SPSR是Abort模式专有的


注:R13:通常作为栈指针用

  R14:link return 寄存器,在子程序调用和异常发生时保存返回地址

  R15:是PC,程序计数器,保存取指地址

  CPSR:ARM的状态寄存器

  SPSR:CPSR的备份寄存器

推荐阅读

史海拾趣

ACI [Applied Concepts, Inc.]公司的发展小趣事

为了进一步提升市场影响力,ACI公司积极寻求与其他行业领导者的战略合作。通过与知名电子产品制造商、芯片供应商等建立紧密的合作关系,ACI得以获取更优质的资源和技术支持。这些合作不仅提升了ACI的产品质量和技术水平,还扩大了公司的市场影响力,为公司的长远发展奠定了坚实基础。

静芯微电子(ElecSuper)公司的发展小趣事

随着技术的不断进步和市场需求的不断变化,静芯微电子开始拓展产品线。公司不仅继续深耕ESD/TVS领域,还逐渐涉足了RS485、HALL、电源、接口等芯片的研发和生产。这些新产品的推出不仅丰富了公司的产品线,还进一步扩大了静芯微电子在电子行业的应用范围。目前,静芯微电子的产品已经广泛应用于汽车电子、工业控制、消费电子等领域,并与多家知名品牌建立了深度合作。

Hoffman Engineering公司的发展小趣事

Hoffman Engineering始终将技术创新视为公司发展的核心驱动力。公司不断投入研发资源,推动产品迭代升级。在机柜系列产品中,Hoffman Engineering通过引入先进的设计理念和生产工艺,不断提升产品的性能和质量。同时,公司还积极关注行业动态和客户需求变化,及时调整产品策略和市场布局。这种持续的技术创新和产品迭代,使Hoffman Engineering在激烈的市场竞争中保持领先地位。

Analog Microwave Design公司的发展小趣事

Analog Microwave Design公司一直注重企业文化的建设和传承。公司倡导创新、务实、合作的企业精神,鼓励员工敢于挑战、勇于创新。同时,公司还注重员工的培训和发展,为员工提供了良好的职业晋升通道和学习机会。这种积极向上的企业文化不仅激发了员工的工作热情和创新精神,还为公司的长期发展提供了有力保障。

以上五个故事分别从初创时期的挑战与机遇、技术创新的突破、国际化战略的实施、产品线的丰富与完善以及企业文化的建设与传承等方面,展现了Analog Microwave Design公司在电子行业发展的历程和成就。这些故事不仅反映了公司的成长轨迹,也体现了公司在面对市场变化和技术挑战时所采取的积极态度和应对策略。

City_Technology公司的发展小趣事

为了进一步推动公司的发展,City Technology于1993年决定售出部分股份,并在1996年成功在伦敦股票交易所上市。这一举措为公司带来了更多的资金支持,也为其后续的资本运作和战略扩张提供了可能。上市后的City Technology在资金、人才和市场资源等方面得到了极大的提升,为其日后的快速发展奠定了坚实的基础。

GE Solid State公司的发展小趣事
通过声音信号来反映曝光量,使得用户可以通过听觉直观地感知光线的强弱。

问答坊 | AI 解惑

我是新手,请求达人指点。 mcbsp 的 接受FIFO 中断怎么进不去

我用的是2812 ,由于2812自带的AD 是12位的,不满足我的精度要求,所以我外扩了一个AD转换芯片 AD73360 (16位)。 启动AD73360之后按说应该往回传踩到的数据,可是我在调试的时候怎么老进不去多通道缓冲串口的接受中断呢(接受深度我设置的是8)? ...…

查看全部问答>

测距离的转感器 分析

测距离的转感器 分析…

查看全部问答>

最早什么时侯可以从SD卡拷贝文件到windows目录?

需要在开机进入explorer之前把SD卡的几个文件拷到windows目录下。 我不懂驱动,于是瞎试一番。 在sdmemory的sdmemmain.cpp的DllEntry增加拷贝文件函数: 1        extern \"C\" BOOL WINAPI DllEntry(HINSTANCE hInstance, ...…

查看全部问答>

请问,OAL和BOOTLOADER有什么区别?

书上说,“BL用来初始化硬件资源,下载系统镜像,而OAL是系统内核的一部分”?…

查看全部问答>

基于WIN CE与s2410的外部中断的实现

基于WIN CE与s2410的外部中断的实现 断是指在执行程序的过程中,出现了异常情况和特殊请求时,计算机将停止现行程序的运行,转去对这些异常情况或特殊情况进行处理。 一、中断的基本知识 二、wince下关于中断的主要函数及其说明 三、s2410下关 ...…

查看全部问答>

求救!evb下我的RDA连接出错

高手帮帮忙啊!我用RDA执行PULL时出现错误提示:An error was encountered wile running this program. 我的代码: Public Const strInternetURL = \"http://localhost/sscesa20.dll\" Public Const strRemoteConnect = \"Provider=SQLOLEDB.1;P ...…

查看全部问答>

关于FPGA内部各逻辑块之间的延时测量

请问如何测量Spartan-3芯片内部各逻辑块之间的延时时间?…

查看全部问答>

蓄电池极性接反后引起的电路故障

故障现象:一辆五十铃汽车在闭合点火开关后,仪表显示正常,但充电指示灯不亮,且将点火开关置于Ⅱ档(起动档)时起动机无反应。 故障排除:检查充电指示灯,充电指示灯显示正常。因为该车充电指示灯受组合继电器控制,所以又拆下组合继电器 ...…

查看全部问答>

滤波器问题

这是用LTC1068做四阶椭圆滤波器的电路图,可是不明白后面运放芯片的作用,特请高手支招。下面的图是07年电子设计大赛的电路图,望高手支招 [ 本帖最后由 开窍的木偶 于 2011-8-8 10:28 编辑 ]…

查看全部问答>