小编Cha*_*aek的帖子

for,如果是汇编语言(冒泡排序)

我在C中制作了一个冒泡排序程序,并检查了它的汇编列表文件.但我无法得到for循环的位置.你能让我知道for循环和if语句在哪里?

 #include<stdio.h>

int main()
{
    int arr[5]={2,4,5,6,1};

    int i,j,tmp;

    for(i=0;i<5;i++) 
    {
        for(j=0;j<4;j++)
        {
            if(arr[j]>arr[j+1])
            {
                tmp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=tmp;
            }
        }
    }

    for(i=0;i<5;i++){
         printf("  %d",arr[i]);
    }
    printf("\n");

    return 0;   
}
Run Code Online (Sandbox Code Playgroud)

这里是汇编列表文件.

; generated by ARM C Compiler, ADS1.2 [Build 848]

; commandline [-O1 -browseinfo "0xff
" -S   -g+ -fk -J:cw:]
        CODE32

        AREA ||.text||, CODE, READONLY

main PROC

|L1.0|

        STMFD    sp!,{r4,lr}

        SUB      sp,sp,#0x18

        MOV      r2,#0x14

        LDR      r1,|L1.148|

        ADD      r0,sp,#4

        BL       __rt_memcpy_w

        MOV      r12,#0

|L1.28|

        MOV      r0,#0

|L1.32|

        ADD      r1,sp,#4

        ADD      r2,sp,#4

        ADD …
Run Code Online (Sandbox Code Playgroud)

c sorting assembly arm

0
推荐指数
1
解决办法
615
查看次数

标签 统计

arm ×1

assembly ×1

c ×1

sorting ×1