我正在尝试在我的 C 代码中内联汇编程序,但由于某种原因,我只是粉碎了我的程序。我不知道汇编程序,但通过一些教程和谷歌我设法编写代码:
inside a c function...
...
int y=0;
asm volatile(
"ldr r1,=0x20200000 \n"
"ldr r0,[r1]\n" //This is the line which crashes
//If i remove it the program runs
//(but without doing the job)
"mov %[result],r0\n"
".LTORG"
:[result]"=r"(y) /* output list*/
: /* input list*/
:"memory" /* clobber register list */
);
printf("The Address value is:%x", y);
back to the c function
...
有人可以帮我解决这个问题。我只需要读取内存并将其交给 C。
我尝试使用不同的地址,但它总是崩溃。(在 Raspberry Pi 上使用 gcc 编译所有内容)