Вызов функции C в коде сборки (газ)

Я нашел пример и редактировал его для газа.

extern printf
.global _start
.data
hello:
db "Hello", 0xa, 0
.text
_start:
mov %rdi, hello
mov %rax, 0
call printf
mov %rax, 0
ret

Но это нет работа. Какие'S не так? Что это значит:

    hello:
db "Hello", 0xa, 0

Я понимаю, что это объем памяти, но я нене понимаю эту строку

db "Hello", 0xa, 0

И здесь

_start:
mov %rdi, hello
mov %rax, 0
call printf
mov %rax, 0
ret

ОС: Linux (Debian). Intel 64-разрядная

Ответы на вопрос(4)

Ваш ответ на вопрос