Montagem: printf não imprime nova linha

Eu tenho o seguinte código que imprime o número de parâmetros passados para./main. Observe ofmt norodata seção. Eu incluí a nova linha\n, assim como emC, mas em vez de imprimir a nova linha, ela imprime:

Número de parâmetros: 1 \ n

Meu código é:

;main.asm
GLOBAL main
EXTERN printf

section .rodata:
fmt db "Number of parameters: %d \n", 0 

section .text:

main:

    push ebp
    mov ebp, esp    ;stackframe

    push dword[ebp+8]       ;prepara los parametros para printf
    push fmt
    call printf
    add esp, 2*4

    mov eax, 0      ;return value

    leave           ;desarmado del stack frame
    ret

Eu sei que incluindo um 10 antes do 0 e depois do "Número ..." emfmt vai imprimi-lo, mas eu queroprintf para fazer isso. Eu montei o código comNASM e depois vinculá-lo viaGCC para criar meu executável.

questionAnswers(2)

yourAnswerToTheQuestion