1.1 汇编程序的Hello world
.data
msg: #首地址
.ascii "Hello, World!
"
len = . - msg
.text
.global _start #汇编程序的格式
_start:
movl $len, %edx
movl $msg, %ecx
movl $1, %ebx
movl $4, %eax
int $0x80
movl $0, %ebx
movl $1, %eax
int $0x80
运行效果与命令如下
这段汇编语言相当于以下C代码:
#include
char msg[14] = "Hello, world
";
#define len 14
int main(void)
{
write(1, msg, len);
_exit(0);
}
.data段有一个编号msg,代表字符串“Hello,world!
”的首地址,相当于C程序的一个全局变量。注意在C语言中字符串的末尾隐含有一个'