.text # Inicio
# Debemos exportar el punto de inicio al ligador.
.global main # Por defecto main.
main:
# Lectura del teclado.
# Manda mensaje de solicitud de N
movl $4, %eax
movl $1, %ebx
movl $Sol, %ecx
movl $SSize, %edx
int $0x80
movl $3, %eax
movl $1, %ebx
movl $SSize, %edx
int $0x80
# Como se lee un ascii, hay que restarle 48 (1 = 49 entonces 49 - 48 = 1)
movb (%ecx), %al
# movb $0, %ah
sub $48, %eax
movl %eax, %ecx
# ciclo
ciclo:
pushl %ecx
movl $1, %ebx
movl $Cad, %ecx
movl $CSize, %edx
movl $4, %eax
int $0x80
popl %ecx
loop ciclo
jmp salir
salir:
movl $0,%ebx
movl $1,%eax
int $0x80
.data # Seccion de datos
Sol: .ascii "Introduce la cantidad: "
SSize = . - Sol
Cad: .ascii "R\n"
CSize = . - Cad