歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> ARM匯編程序---通過ARM匯編調用C語言函數實現累加

ARM匯編程序---通過ARM匯編調用C語言函數實現累加

日期:2017/3/1 10:06:11   编辑:Linux編程

在C語言中定義實現一個累加的函數,參數是累加的最大值,從1加到此值。下面是代碼:

匯編代碼:其中注意開始的參數的定義要緊靠前面,負責無法讀出,其中要將C語言函數導入:IMPORT+函數名,並將你定義的匯編開始部分定義出去:EXPORT+開始函數名

STACK_TOP EQU 0x40002000
N EQU 100
PRESERVE8
AREA HOMEWORK,CODE,READONLY
IMPORT add
EXPORT START
ENTRY
START
LDR R13,=STACK_TOP
MOV R0,#N
BL add
LDR R3,=RESULT
STR R0,[R3]
STOP
B STOP

AREA MYDATA,DATA,READWRITE
RESULT
DCD 0

END

C語言代碼:這個大家都看得懂,無須解釋。

int add(int num)
{ int result=0;
int i;
for(i=1;i<=num;i++)
{
result=result+i;
}
return result;
}

Copyright © Linux教程網 All Rights Reserved