相关疑难解决方法(0)

在gcc内联汇编中,双百分号(%%)有什么作用?

我遇到了一个代码如下:

asm volatile (
    # [...]
    "movl $1200, %%ecx;"
    # [...]
);
Run Code Online (Sandbox Code Playgroud)

我知道movl $1200, %ecxx86中有什么用.但我很困惑为什么有两个百分号.

c x86 gcc

11
推荐指数
2
解决办法
3146
查看次数

c变量存储在eax寄存器中

我在这做错了什么?

int val = 15;
asm ("movl %1, %%eax"::"r"(val):"%eax" );
__asm__ volatile ("int $0x80");
Run Code Online (Sandbox Code Playgroud)

我想在eax中移动15然后调用中断

"错误":'asm':操作数超出范围

c assembly gcc inline-assembly

-2
推荐指数
1
解决办法
3073
查看次数

标签 统计

c ×2

gcc ×2

assembly ×1

inline-assembly ×1

x86 ×1