Tarea: Programas que incluyen la libreria EMU8086.INC
En esta ocasion les mostrare 3 programas que usan la libreria EMU8086.INC la cual utiliza macros para hacer mas sencilla y agil la programacion en lenguaje ensamblador.
Estos ejemplos los obtuve de JBWYATT y aqui les dejo el enlace para que visiten su pagina.
Pagina de JBWYATT
HolaMundo
Código:
Ejecución:
Ejecución:
Impresión de cadena con numeros
Codigo:
Ejecucion:
Estos ejemplos los obtuve de JBWYATT y aqui les dejo el enlace para que visiten su pagina.
Pagina de JBWYATT
HolaMundo
Código:
INCLUDE EMU8086.INC ORG 100H PRINT 'HOLA MUNDO!' GOTOXY 10,5 PUTC 65 ;65 ES EL CODIGO ASCII PARA LA 'A' PUTC 'B' RET ;RETORNO AL SISTEMA OPERATIVO END ;ORDEN PARA DETENER EL COMPILADOR
Ejecución:
Saludo
Código:
; demonstrate get_string and print_string ;---------------------------------------- include 'emu8086.inc' ORG 100h LEA SI, msg1 ; coloca el puntero (SI) a msg ; para pedir el numero CALL print_string ; imprime el mensaje que SI indica LEA DI, buffer ; coloca el puntero (DI) al buffer de entrada MOV DX, bufSize ; ajusta el tamano del buffer CALL get_string ; obtiene el nombre y lo coloca en el buffer LEA SI, newln ; apunta a CR/LF / mensaje de Hola CALL print_string ; imprime el mensaje que SI indica RET ; retorna al sistema operativo ; data msg1 DB "Ingresa tu nombre: ", 0 newln DB 13, 10 DB "Hola, " buffer DB 20 DUP (0) ; buffer de entrada para get_string bufSize = $-buffer ; calcula el tamano del buffer DEFINE_GET_STRING DEFINE_PRINT_STRING END ; comando para detener el compilador
Ejecución:
Impresión de cadena con numeros
Codigo:
include 'emu8086.inc' ORG 100h LEA SI, msg1 ; pregunta por el numero CALL print_string ; CALL scan_num ; obtiene el numero de CX. MOV AX, CX ; copia el numero a AX. ; imprime la siguiente cadena CALL pthis DB 13, 10, 'Has ingresado: ', 0 CALL print_num ; imprime el numero en AX RET ; retorna al sistema operativo ; data msg1 DB 'Ingresa un numero: ', 0 ; macros to define procs DEFINE_SCAN_NUM DEFINE_PRINT_STRING DEFINE_PRINT_NUM DEFINE_PRINT_NUM_UNS ; requerido para print_num DEFINE_PTHIS END
Ejecucion:
Comentarios
Publicar un comentario