最近用ARM汇编写了3个小程序,今天发上来供大家参考一下。
程序1:C语言中嵌套ARM汇编实现找出三个数中的最大值,程序如下:
test.c文件:
#include <stdio.h>
#define N 3
int MAX(int *p,int b)
{
int rmax = 0; //用来返回最大值
int temp = 0; //作为变量交换的中间变量
int count = 0; //计数器,用来做循环控制变量
__asm{
MOV count,#0
loop:
LDR temp,[p,count * 4]
CMP rmax,temp
MOVLT rmax,temp
ADD count,count,#1
CMP count,b
BNE loop
}
return rmax;
}
int main()
{
int src[N]={3,6,5};//定义一个数组
int max = MAX(src,N);
return 0;
}
程序2:C语言调用汇编程序实现冒泡排序,程序如下:
main.c如下:
#include <stdio.h>
#define N 10
int array[N] = {10,9,8,11,13,7,3,3,5,