C中的内联ASM,来自数组的值

时间:2016-04-25 19:31:21

标签: c arrays assembly buffer inline

我需要在ASM内联中访问数组中的值。我从这里得到了分段错误:

#include <stdio.h>

int main() {
char letters[] = "zbc";
char result; 

    asm("mov (%%ebx), %%eax\n\t"
    :   "=a" (result)
    :   "b"(letters)
    );

printf("%c\n", result);
return 0;

}

此代码有什么问题?

同样,如果你能告诉我,是否可以使用内联缓冲区?我需要编写内联函数,在其中为数组中的所有字母添加一些值,然后将新数组返回给C.

0 个答案:

没有答案