void main() { __asm__ ( "movl $1, %eax;\n" /* 1 is the syscall number for write */ "movl $1, %ebx;\n" /* 1 is stdout and is the first argument */ "leal 16(%eip), %esi;\n" "movl $13, %edx;\n" /* third argument is the length of the string to print*/ "syscall;\n" "movl $60,%eax;\n" "xorl %ebx,%ebx; \n" "syscall;\n" "message: .ascii \"Hello World!\\n\";" ); }