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
   
    
    
    

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: