Почему эта строка не печатается (printf сборка)?
Попытка создать квайн в сборке, однако, когда я пытаюсь напечатать строку, она не будет напечатана, пока я не удалю все символы над ней.
.data
hello: .string ".data%3$c%2$c%1$c hello: .string%4$s"
.text
.globl _main
_main:
push %rbp
mov %rsp, %rbp
mov $10, %esi
mov $9, %edx
mov $34, %ecx
lea hello(%rip), %eax
lea hello(%rip), %rdi
call _printf
leave
ret
Вывод прямо сейчас таков:
.data"
hello: .string(null)
Изменить: ожидаемый результат
.data"
hello: .string.data%3$c%2$c%1$c hello: .string%4$s