Y si no la puse junto al programa fuew porque ya era de noche y me faltaban terminar de entender algunas cosas (basicas por supuesto) sobre su funcionamiento, ahora creo que las podre explicar un poco mejor, de todos modos, ahi les va, si encuentran algo malo, corrijanme en los comentarios:
.MODEL TINY
Bueno, quizas esta es una muy intuitiva, se refiere a que el programa es un programa pequeño y sugiere (?) que se use poca memoria en su ejecucion.
.STACK
Obligatorio para TASM (no se si para otros compiladores), especifica que se va a usar la pila (Tema grande, solo digo que es mejor ponerlo y punto).
.DATA
msg db ‘Hola mundo, estoy aprendiendo assembler $’
Aqui definimos las variables que utilizaremos (Creo que mas correcto seria decir “Variable constantes”), lo hacemos haci: nombre db/dw valor. Para las strings es db y la string entre comillas simples ‘. Para numeros pueden ser dw o db y el valor numerico simple. NOTA: para strings tiene que terminar con el caracter $
.CODE
Indica el comienzo del codigo, desde aqui todo lo que se ponga es lo que se va a ejecutar.
main proc
Indica que es el procedimiento main(?), no tengo demasiada info sobre esto, pero se dos cosas: tiene que haber y que main se puede cambiar por el nombre que quieras.
mov ax, @DATA
Mueve a main la direccion(?) del segmento DATA
mov ds, ax
Mueve la direccion que almacenamos en ds (Que representa al segmento activo) la direccion almacenada en ax.
mov dx, offset msg
Mueve el offset de mensaje a el registro dx. Osea, la direccion de mensaje a dx.
mov ah, 09
Movemos 09 al registro alto de ax ( AX, DX y CX (?) tienen dos direcciones, una alta definida por una H (AH) y otra por una L(AL) que significan High byte y Low byte (DL, DH, etc)), para ejecutar una interrupcion al sistema DOS
int 21h
Usamos la interrupcion 21-09. Osea, la instruccion 09 (Almacenada en AH) de la interrupcion 21.
mov ah, 04ch
Movemos la instruccion para finalizar a AH
mov al, 00
Movemos 00 a al, que vendria a ser el codigo que regresa el programa.
int 21h
Terminamos el programa.
endp main
Informamos que el procedimiento main se finaliza
END main
Informamos que el programa finaliza.
Bueno, como ven, bastante complicado, despues ire explicando (Basandome en otros manuales) otras cosas


Comentarios recientes