新闻中心

EEPW首页>嵌入式系统>设计应用> arm汇编冒泡排序

arm汇编冒泡排序

作者: 时间:2016-11-21 来源:网络 收藏
注:本程序在ARM Developer Suite v1.2下调试通过。

//---------------------------------------------------------------------------

本文引用地址://m.amcfsurvey.com/article/201611/319212.htm

// main.c

//---------------------------------------------------------------------------

#include
#include
#include

extern void start(int num,int *arr);
void sort(int num, int *arr)//C语言冒泡排序
{
int i,j,temp;
for(j=0;j<=num-1;j++)
{
for (i=0;i if (arr[i]>arr[i+1])
{
temp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
}

}
int main(void)
{
int num = 10;
int arr[10],i;
srand(time(0));
while(1)
{
printf("before sort result:n");
for (i=0;i<10;i++){
arr[i] = rand() % 100;
printf("%dt",arr[i]);
}
printf("n");
start(num,arr);
//sort(num, arr);
printf("after sort result:n");
for (i = 0;i<10;i++){
printf("%dt",arr[i]);
}
printf("n");
printf("n");
}
}

//---------------------------------------------------------------------------

//汇编冒泡排序算法

// sort.s

// 除了start、stag1、stag2可以顶头,其他汇编程序代码前均有一个tab键

//---------------------------------------------------------------------------

area sort,code,readonly
code32

export start;向外声明方法start

start
mov r7,r1
stag1
sub r0,r0,#1
cmp r0,#0
movle pc,r14
mov r2,#0
mov r1,r7
stag2
ldr r3,[r1]
ldr r4,[r1,#4]!
cmp r3,r4
strgt r3,[r1]
strgt r4,[r1,#-4]
add r2,r2,#1
cmp r2,r0
beq stag1
b stag2

end



关键词:arm汇编冒泡排

评论


技术专区

关闭