Ensamblador Básico
-->
Hola a todos, en este Blog subiré algunos programas hechos en ensamblador ya que es un lenguaje de programación más dificiles de aprender tratando así de ayudar a las personas interesadas en aprender el lenguaje, o en su caso dado el código que les sirva para hacer sus tareas, ya que es muy dificil encontrar programas para este lenguaje, los ejemplos que mostraré son programas, prácticas o proyectos que me dejarón en la universidad o que hice por cuenta propia.
Los programas estan divididos en dos partes:
La primera es que son programas en ensamblador programados en debuger de windows (Son los programas mas sencillos).
La segunda es con un compilador MASM (También se pueden correr los programas del debug).
¿Como correr una programa en debug o MASM?
Para correr un programa en debug hay que abrir la consola de windows (MSDOS) y teclear debug, damos enter y saldra un guión, para empezar a escribir el código tecleamos la letra a (significa ASSEMBLER que es la instruccion para empezar a ensamblar o dar las instrucciones, después de -a podemos escribir nuestro código a ejecutar, de lo contrario el compilador no reconocera ninguna instrucción).
Les dejo el primer programa que será imprimir una cadena (El clásico "Hola Mundo").
a
jmp 0120
e 0102 "Hola Mundo" 0a 0d "$"
a 120
mov ah,09
mov dx,0102
int 21
int 20
g
Imagen de como debe quedar escrito el programa.
Hola mundo con el compilador MASM.
.model small
.stack 64
.data
msj db 0ah,0dh, 'Hola Mundo','$'
.code
inicio:
mov ax,@data
mov ds,ax
mov ah,09h
mov dx,offset msj
int 21h
Salir:
mov ah,04ch
int 21h
end
.stack 64
.data
msj db 0ah,0dh, 'Hola Mundo','$'
.code
inicio:
mov ax,@data
mov ds,ax
mov ah,09h
mov dx,offset msj
int 21h
Salir:
mov ah,04ch
int 21h
end
En este primer programa explicaré como hacer el linkeo y compilado de un programa en MASM, primeramente crearemos un archivo nuevo.
Despues escribimos nuestro código.
Lo siguiente será guardarlo con extensión .asm
Después lo vamos a compilar, nos vamos a la pestaña File/Dos Shell
Nos saldrá una ventana como el MSDOS, para el compilado escribimos: ml nombreArchivo.asm
Si el codigo está escrito correctamente saldrá la información del programa como en la figura siguiente y se generará un archivo obj.
Si hay un error, nos dirá en que línea se detecto el error.
Una vez escrito, linkeamos nuestro archivo obj con la siguiente instrucción: @echo off
Esto nos generará un archivo .exe el cual lo podremos ejecutar
Para regresar a nuestro código tecleamos exit.
A primera vista se ve más complicado programar en MASM pero MASM tiene muchas ventajas que el debugger, como es el poder declarar variables o el mejoramiento de diferentes instrucciones pero estas las veremos más adelante.
Suerte y hasta la próxima!!! -->
Hola, una consulta como introduzco una etiqueta de subrutina en el DEBUG?
ResponderEliminarhola como puedo leer una cadena de caracteres desde el teclado.
ResponderEliminarmov ah, 09h
Eliminarmov dx, offset[cadena]
int 21h
Este comentario ha sido eliminado por el autor.
ResponderEliminar