Skip to content

Instantly share code, notes, and snippets.

@brandon22esquivel
Created June 9, 2020 23:37
Show Gist options
  • Save brandon22esquivel/b91fa3ac568cdf08eba2b84853647a9d to your computer and use it in GitHub Desktop.
Save brandon22esquivel/b91fa3ac568cdf08eba2b84853647a9d to your computer and use it in GitHub Desktop.
.model small
.stack ;Definiremos la pila de datos
.data ;Debe de reservar un espacio de memoria para las variables que definiremos
mensaje db 13,10,'Hola Mundo $' ;Creamos nuestra variable con un mensaje
mensaje2 db 13,10, 'Desarrollo de Software $'
mensaje3 db 13,10, 'Bienvenidos $'
.code
inicio:
mov ax, @data ; @data Regresa los datos a pantalla
mov ds,ax ;@data debe regresar a ds significa registro de dato de todas las constantes
;Imprime el mensaje Hola Mundo
mov dx, offset mensaje
;mov ah,9h h
;int 21h
call imprimir ;Mandamos a imprimir nuestra funcion para ompimizar codigo
;Imprime el mensaje Desarrollo de Software
mov dx, offset mensaje2
;mov ah,9h
;int 21h
call imprimir
;Imprime el mensaje Desarrollo de Software
mov dx, offset mensaje3
;mov ah,9h
;int 21h
call imprimir
;call finalizar Va a estar retornando
jmp finalizar ;No va a retornar si no se ira directo a finalizar
;Crearemos un bloque de codigo para optimizar lineas de codigo, una vez borradas las
; interrupciones de los mensajes si no ponemos la funcion de imprimir,
; el emulador solo mostrara el ultimo mensaje que reciba.
imprimir:
mov ah, 9h
int 21h
ret ;Aqui retornara al mensaje cada vez pero, el mensaje3 se repetira 2 veces y
; se generara un bucle infinito para solucionar crearmos una etiqueta para finalizar
finalizar:
mov ah,4ch ;Funcion que nos permite finalizar un programa
int 21h
end inicio
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment