ARM汇编程序设计8精要.pptVIP

  • 2
  • 0
  • 约1.68万字
  • 约 79页
  • 2016-11-21 发布于湖北
  • 举报
3. 汇编语言子程序调用及返回 子程序的调用 在ARM汇编语言中,子程序调用是通过BL指令来完成的。BL指令的语法格式如下: BL subname 其中,subname是被调用的子程序的名称。 子程序的返回 在返回调用子程序时,转移链接指令保存到LR寄存器(r14)中的值需要拷贝回程序寄存器PC(r15)。 ARM语言选择 由于高级编程语言隐藏了CPU执行指令的许多细节,因此在只关心系统所具有功能,采用高级语言编写程序更为合适。 但是,CPU执行指令的细节差异会反应在系统的非功能特性上,例如系统程序的规模和运行速度。因此,掌握汇编语言程序设计对于嵌入式系统的设计者来说是非常必要的。 ATPCS ATPCS(ARM-Thumb Procedure Call Standard)规定了一些子程序间调用的基本规则,这些规则包括子程序调用过程中寄存器的使用规则,数据栈的使用规则,参数的传递规则。有了这些规则之后,单独编译的C语言程序就可以和汇编程序相互调用。 使用C语言编译器编译的C语言子程序满足用户指定的ATPCS类型。而对于汇编语言来说,则需要用户来保证各个子程序满足ATPCS的要求。 ATPCS规范要点 寄存器的使用规则 堆栈使用规则 参数传递规则 子程序结果返回规则 寄存器的使用规则 子程序间通过寄存器R0~R3来传递参数。 寄存器R0~R3可记作a0~a3。被调用的

文档评论(0)

1亿VIP精品文档

相关文档