section .data
prompt db "Ingresa un digito (0-9)", 0
prompt_len equ $-prompt
msj_dentro db "El número esta dentro del rango", 0Ah
msj_dentro_len equ $-msj_dentro
msj_bajo db "El numero esta bajo del rango", 0Ah
msj_bajo_len equ $-msj_bajo
msj_alto db "El numero esta arriba del rango", 0Ah
msj_alto_len equ $-msj_alto
num times 2 db 0
section .text
global _start
_start:
;pedir el numero
mov rax, 1
mov rdi, 1
mov rsi, prompt
mov rdx, prompt_len
syscall
;leemos el codigo
mov rax, 0
mov rdi, 0
mov rsi, num
mov rdx, 2
syscall
mov al, [num]
sub al, "0"
;validar el limite inferior
cmp al, 3
jl fuera_bajo
;validar el limite superior
cmp al, 7
jg fuera_alto
;esta dentro del rango
mov rax, 1
mov rdi, 1
mov rsi, msj_dentro
mov rdx, msj_dentro_len
syscall
jmp salir
fuera_bajo:
; imprimimos mensaje
mov rax, 1
mov rdi, 1
mov rsi, msj_bajo
mov rdx, msj_bajo_len
syscall
jmp salir
fuera_alto:
; imprimimos mensaje
mov rax, 1
mov rdi, 1
mov rsi, msj_alto
mov rdx, msj_alto_len
syscall
salir:
mov rax, 60
mov rdi, 0
syscall
To embed this project on your website, copy the following code and paste it into your website's HTML: