어셈블리어를 청강하면서 듣고있는데


이중포문을 쓰잖아..


근데 


for(i=0;i<10;i++)

{

for(j=0;j<500;j++){}

}


이거랑


for(i=0;i<500;i++)

{

for(j=0;j<10;j++){}

}


이거랑 속도차이가 있는거냐?


예문이


for(i=0;i<10;i++)

a3000190 ldr r2,0xa30001dc

a3000194 mov r1,#0

a3000198 mov r3, r1

a30001ac add r1,r1,#1

a30001b0 cmp r1,#0xa

a30001b4 blt 0xa300019c


for(j=0;j<500;j++)

a300019c mov r0,r3

a30001a0 add r0,r0,#1

a30001a4 cmp r0,r2

a30001a8 blt 0xa3000a0


이거였는데


난 아무리 반대로 돌려봐도 똑같은 클럭이 나오는데


대체 뭐가 다른거냐 이거..


그냥 다르다. 이렇게 나오니까 환장하겠네



for(i=0;i<500;i++)

a3000190 ldr r2,0xa30001dc

a3000194 mov r1,#0

a3000198 mov r3, r1

a30001ac add r1,r1,#1

a30001b0 cmp r1,#0xa

a30001b4 blt 0xa300019c


for(j=0;j<10;j++)

a300019c mov r0,r3

a30001a0 add r0,r0,#1

a30001a4 cmp r0,r2

a30001a8 blt 0xa3000a0



위에꺼랑 아래꺼랑 차이가 있는거냐 이거..