- http://www.ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html
- https://blog.csdn.net/lwx62/article/details/82796364
- https://blog.csdn.net/chentaoxie/article/details/99091023
- https://blog.csdn.net/xiaoxiaowenqiang/article/details/80530438
- 操作数的大小:
- AT&T:通过操作码的后缀指定,b(8b),w(16b),l(32b);
- Intel: 通过操作数前缀指定, byte ptr,word ptr, dword ptr
- 内存间接引用:
- AT&T:disp(base,index,scale)
- Intel:[base + index * scale + disp]
- 代码:
__asm__ __volatile__("mov %%rbp, %0\r\n"
:"=m"(rbp)
:
:"memory");
- 内联汇编%%ebp,其中第一个%为转义符,%0表示对output