嵌入式系统基础第6章--ARM程序设计解读.pptVIP

  • 9
  • 0
  • 约1.07万字
  • 约 78页
  • 2017-01-23 发布于香港
  • 举报

嵌入式系统基础第6章--ARM程序设计解读.ppt

嵌入式系统基础第6章--ARM程序设计解读

6.4.3 汇编程序调用C函数实例 现有C函数g()如下: int g(int a, int b, int c, int d, int e) { return a+b+c+d+e; } 汇编函数f中调用C函数g(),以实现下面的功能。 整个汇编函数f的代码如下: int f(int i) {return –g(i, 2*i, 3*i, 4*i,5*i)} EXPORT f AREA f, CODE, READONLY IMPORT g ;声名g为外部引用符号 STR LR, [SP,#-4] ;断点存入堆栈 ADD R1,R0,R0 ;(R1)= i*2 ADD R2,R1,R0 ; (R2)= i*3 ADD R3,R1,R2 ; (R3)= i*5 STR R3,[SP,#-4] ;将(R3)即第5个参数i*5存入堆栈 ADD R3,R1,R1 ;(R3)= i*4 BL g ;调用C函数g(),返回值在寄存器R0中 ADD SP,SP,#4 ;清栈 RSB R0,R0,#

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档