求帮帮看下ARM汇编的LDR指令
我的代码是:
#include <stdio.h>
int main(void)
{
int ret1 = 0;
int ret2=22;
int input=102;
int buffer[2];
buffer[1]=111;
buffer[0]=1020;
__asm__ __volatile__ (
"mov r3,%2 \n"
"ldr r0,[r3],#1 \n"
"ldr r1, [r3] \n" ////为什么这里还是返回buffer[0]的值
"mov %0,r0 \n"
"mov %1,r1 \n"
: "=r"(ret1),"=r"(ret2)
: "r"(buffer)
:"cc"
);
printf("sno r0 moveq ret = %d,ret2=%d\n", ret1,ret2);
return 0;
}