¿Por qué no puedo sys_write de un registro? [duplicar]

Esta pregunta ya tiene una respuesta aquí:

¿Qué sucede si usa el ABI de Linux int 0x80 de 32 bits en un código de 64 bits? 1 respuesta
; NASM
push 30 ; '0'

mov rax, 4 ; write
mov rbx, 1 ; stdout
mov rcx, rsp ; ptr to character on stack
mov rdx, 1 ; length of string = 1
int 80h

El código anterior no imprime nada a la salida estándar. Funciona cuando le doy un ptr a un personaje ensection .data. ¿Qué estoy haciendo mal?

Respuestas a la pregunta(2)

Su respuesta a la pregunta