徐春雷ARM体系结构域编程第7章.pptVIP

  • 3
  • 0
  • 约2.08千字
  • 约 12页
  • 2018-03-19 发布于河南
  • 举报
徐春雷ARM体系结构域编程第7章

第7章 ARM程序和Thumb程序 混合使用 ARM体系结构支持ARM程序和Thumb程序混合使用。本章介绍ARM程序和Thumb程序混合使用时需要的相关技术。 7.1 概 述 ARM版本5提供的BX指令在调用子程序的同时,实现程序的状态切换,从而使程序状态的切换不需要额外的开销。 1. ARM程序和Thumb程序混合使用的场合 2. 在编译或者汇编时使用选项–apcs/interwork 7.2 在汇编语言程序中通过用户代码支持interwork 对于C/C++源程序而言,只要在编译时指定–apcs /interwork选项,连接器生成的代码就遵守支持ARM程序和Thumb程序混合使用的ATPCS。而对于汇编源程序而言,用户必须保证编写的代码遵守支持ARM程序和Thumb程序混合使用的ATPCS。 对于汇编程序来说,可以有两种方法来实现程序状态的切换。第一种方法是利用连接器提供的小程序(veneers)来实现程序状态的切换,这时用户可以使用指令BL来调用子程序;另一种方法是用户自己编写状态切换的程序,这种方法编写的程序需要的代码更少,运行的速度更快。本节主要介绍第二种方法。 7.2.1 可以实现程序状态切换的指令 在版本4中可以实现程序状态切换的指令是BX。 从ARM版本5开始,下面的指令也可以实现程序状态的切换: BLX LDR、LDM及POP 1. B

文档评论(0)

1亿VIP精品文档

相关文档