编译的最小例子&用gcc运行程序集?

时间:2011-07-03 12:44:59

标签: linux assembly x86-64

int main(int argc, char* argv[])
{
  return 0;
}

可以通过gcc编译成可执行文件的最短组装示例是什么?

我遇到this example,但有hi_temp:,.data等标签太多,最小版本是什么?

3 个答案:

答案 0 :(得分:3)

.text
    .align 4
    .globl main
main:
     pushl %ebp
     movl %esp,%ebp
     xorl %eax,%eax
     leave
     ret

编译并运行:

$ gcc -m32 asm.S
$ ./a.out

答案 1 :(得分:3)

.text
    .globl main
main:
     xorl %eax,%eax ;return 0
     ret

答案 2 :(得分:2)

以下是汇编中Hello World的示例,以及解释:

http://asm.sourceforge.net/intro/hello.html