- 1、本文档共80页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[信息与通信]ARM 指令集
ARM 指令集
寄存器和处理器模式(26-bit 体系)
寄存器和处理器模式(32-bit 体系)
程序状态寄存器和操纵它的指令
寄存器装载和存储指令
算术和逻辑指令
移位操作
乘法指令
比较指令
分支指令
条件执行
软件中断指令
APCS (ARM 过程调用标准)
编写安全的 32-bit 代码的基本规则
IEEE 浮点指令
汇编器伪指令
指令快速查找
ARM 指令格式
寄存器和处理器模式
ARM 处理器有二十七个寄存器,其中一些是在一定条件下使用的,所以一次只能使用十六
个...
寄存器 0 到寄存器 7 是通用寄存器并可以用做任何目的。不象 80x86 处理器那样
要求特定寄存器被用做栈访问,或者象 6502 那样把数学计算的结果放置到一个累
加器中,ARM 处理器在寄存器使用上是高度灵活的。
寄存器 8 到 12 是通用寄存器,但是在切换到 FIQ 模式的时候,使用它们的影子
(shadow)寄存器。
寄存器 13 典型的用做 OS 栈指针,但可被用做一个通用寄存器。这是一个操作系
统问题, 是一个处理器问题,所以如果你 使用栈,只要你以后恢复它,你可以
在你的代码中自由的占用(corrupt)它。每个处理器模式都有这个寄存器的影子寄存
器。
寄存器 14 专职持有返回点的地址以便于写子例程。当你执行带连接的分支的时候,
把返回地址存储到 R14 中。同样在程序第一次运行的时候,把退出地址保存在 R14
中。R14 的所有实例必须被保存到其他寄存器中( 是实际上有效)或一个栈中。这
1
PDF created with pdfFactory trial version
个寄存器在各个处理器模式下都有影子寄存器。一旦已经保存了连接地址,这个
存器就可以用做通用寄存器了。
寄存器 15 是程序计数器。它除了持有指示程序当前使用的地址的二十六位数之外,
还持有处理器的状态。
为更清晰一些... 提供下列图表:
User 模式 SVC 模式 IRQ 模式 FIQ 模式 APCS
R0 R0 R0 R0 a1
R1 R1 R1 R1 a2
R2 R2 R2 R2 a3
R3 R3 R3 R3 a4
R4 R4 R4 R4 v1
R5 R5 R5 R5 v2
R6 R6 R6 R6 v3
R7 R7 R7 R7 v4
R8 R8 R8 R8_fiq
文档评论(0)