完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
3个回答
|
|
ARM有两种工作状态:
1.ARM状态 此时处理器执行32位的字对齐ARM指令。 2.Thumb状态 此时处理器执行16位的,半字对齐的Thumb指令。 在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且处理器工作状态的转变不影响处理器的工作模式。 ARM指令和 THUMB指令的关系: THUMB指令是ARM指令的子集 可以相互调用,只要遵循一定的调用规则 Thumb指令与ARM指令的时间效率和空间效率关系为: 存储空间约为ARM代码的60%~70% 指令数比ARM代码多约30%~40% 存储器为32位时ARM代码比Thumb代码快约40% 存储器为16位时Thumb比ARM代码快约40~50% 使用Thumb代码,存储器的功耗会降低约30% |
|
|
|
开始进入寄存器:
ARM微处理器共有37个32位寄存器,其中31个为通用寄存器,6个为程序状态寄存器。但是这些寄存器不能被同时访问,具体哪些寄存器是可以访问的,取决ARM处理器的工作状态及具体的运行模式。 通用寄存器 通用寄存器可以分为下面3类:未备份寄存器(The unbanked registers),包括R0~R7。备份寄存器(The banked registers),包括R8~R14。程序计数器PC,即R15。 程序状态寄存器 CPSR:当前程序状态寄存器(current program status register) ,cpsr在用户级编程时用于存储条件码。CPSR包含条件码标志,中断禁止位,当前处理器模式以及其他状态和控制信息。 SPSR:备份程序状态寄存器。SPSR用于保存CPSR的状态,以便异常返回后恢复异常发生时的工作状态。其实就是CPSR的备份。 寄存器(ARM状态) 在ARM状态下,任一时刻可以访问16个通用寄存器和一到两个程序状态寄存器。在异常模式下,则可访问到特定模式分组寄存器。 通用寄存器 程序状态寄存器 |
|
|
|
远不止3种工作状态
|
|
|
|
只有小组成员才能发言,加入小组>>
960 浏览 1 评论
1106 浏览 1 评论
12524 浏览 0 评论
5938 浏览 3 评论
17729 浏览 6 评论
1030浏览 1评论
1030浏览 1评论
960浏览 1评论
4887浏览 1评论
1106浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 06:06 , Processed in 0.937725 second(s), Total 84, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号