实现一个Hello world汇编

实现一个汇编的hello world程序,直接采用系统调用打印,没有用到C标准库所以不需要链接C标准库,没有用到C运行库所以也就没有了main函数,非常简洁。
#hello.s
.data
msg : .string "Hello, world!\n"
len = . - msg 

.text
.global _start

_start:

    movl $len, %edx //压入第3个参数字符串的长度
    movl $msg, %ecx //压入第2个参数 字符串的首地址
    movl $1, %ebx  //压入1第一个参数 也就是标准输出
    movl $4, %eax //4号功能调用 write
    int $0x80

    movl $0, %ebx //压入参数
    movl $1, %eax //1号功能调用 exit
    int $0x80

你可能感兴趣的:(实现一个Hello world汇编)