section .data
prompt db "Introduce un digito (0-9) ", 0
prompt_lon equ $- prompt
msj_dentro db "El digito esta dentro del rango"
msj_dentro_lon equ $- msj_dentro
msj_arriba db "El digito esta por encima del rango"
msj_arriba_lon equ $- msj_arriba
msj_abajo db "El digito esta por debajo del rango"
msj_abajo_lon equ $- msj_abajo
num times 2 db 0
section .text
global _start
_start:
;pedimos el numero
mov rax, 1
mov rdi, 1
mov rsi, prompt
mov rdx, prompt_lon
syscall
;Leemos el numero
mov rax, 0
mov rdi, 0
mov rsi, num
mov rdx, 2
syscall
;convertimos a entero
mov al, [num]
sub al, "0"
;comparamos
cmp al, 3
jb abajo
cmp al, 7
ja arriba
;imprimir mensaje adentro
mov rax, 1
mov rdi, 1
mov rsi, msj_dentro
mov rdx, msj_dentro_lon
syscall
jmp salir
abajo:
;imprimir mensaje abajo
mov rax, 1
mov rdi, 1
mov rsi, msj_abajo
mov rdx, msj_abajo_lon
syscall
jmp salir
;jmp
; je ==
;jb < -> <= jbe
;ja > -> >= jae
;jb -> jl
;ja -> jg
arriba:
;imprimir mensaje arriba
mov rax, 1
mov rdi, 1
mov rsi, msj_arriba
mov rdx, msj_arriba_lon
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: