爱问ARM中文指令--寄存器和处理器模式.docVIP

  • 2
  • 0
  • 约1.7万字
  • 约 14页
  • 2016-08-24 发布于河南
  • 举报

爱问ARM中文指令--寄存器和处理器模式.doc

爱问ARM中文指令--寄存器和处理器模式

ARM中文指令--寄存器和处理器模式 ARM 处理器有二十七个寄存器,其中一些是在一定条件下使用的,所以一次只能使用十六个... 寄存器 0 到寄存器 7 是通用寄存器并可以用做任何目的。不象 80x86 处理器那样要求特定寄存器被用做栈访问,或者象 6502 那样把数学计算的结果放置到一个累加器中,ARM 处理器在寄存器使用上是高度灵活的。 寄存器 8 到 12 是通用寄存器,但是在切换到 FIQ 模式的时候,使用它们的影子(shadow)寄存器。 寄存器 13 典型的用做 OS 栈指针,但可被用做一个通用寄存器。这是一个操作系统问题,不是一个处理器问题,所以如果你不使用栈,只要你以后恢复它,你可以在你的代码中自由的占用(corrupt)它。每个处理器模式都有这个寄存器的影子寄存器。 寄存器 14 专职持有返回点的地址以便于写子例程。当你执行带连接的分支的时候,把返回地址存储到 R14 中。同样在程序第一次运行的时候,把退出地址保存在 R14 中。R14 的所有实例必须被保存到其他寄存器中(不是实际上有效)或一个栈中。这个寄存器在各个处理器模式下都有影子寄存器。一旦已经保存了连接地址,这个寄存器就可以用做通用寄存器了。 寄存器 15 是程序计数器。它除了持有指示程序当前使用的地址的二十六位数之外,还持有处理器的状态。 为更清晰一些... 提供下列图表: Use

文档评论(0)

1亿VIP精品文档

相关文档