Lenguajes de interfaz
jueves, 30 de abril de 2020
miércoles, 1 de abril de 2020
martes, 24 de marzo de 2020
miércoles, 18 de marzo de 2020
EMU 8086
EMU 8086
El emu8086 es un emulador del microprocesador 8086 (Intel o AMD compatible) con assembler
integrado. A diferencia del entorno de programación en assembler utilizado anteriormente en la cátedra
(MASM), este entorno corre sobre Windows y cuenta con una interfaz gráfica muy amigable e intuitiva
que facilita el aprendizaje el lenguaje de programación en assembler.
Dado que en un entorno emulado de microprocesador no es posible implementar una interfaz real de
entrada/salida, el emu8086 permite interfacear con dispositivos virtuales y emular una comunicación con
el espacio de E/S. Para esto, el emu8086 cuenta con una serie de dispositivos virtuales preexistentes en
el software base, listos para ser utilizados, entre los que se encuentran una impresora, un cruce de calles
con semáforos, un termómetro, un motor paso a paso, etc. No obstante, la cátedra ha desarrollado
dispositivos adicionales con características particulares para la realización del segundo trabajo práctico.
Se muestra a continuación una tabla comparativa con las diferencias entre el entorno de programación
en assembler utilizado anteriormente en la cátedra (MASM 6.11) y el nuevo emu8086:

Conseguirás que tu ordenador funcione exactamente como lo haría si tuviera instalado el microprocesador realmente.
Este es el modo para poder ejecutar aquellos programas que solo funcionan bajo este tipo de procesadores. El emulador funciona como si realmente tuviera instalado este chip y podrás tener acceso a las mismas funciones que tendrías del otro modo: muestra registros, variables, marcas, memoria...
Emu8086 puede crear su propio sistema y grabar su código binario en un disquete. Incluye conexión para determinados dispositivos pero podrás añadirle los que necesites.
Este es el modo para poder ejecutar aquellos programas que solo funcionan bajo este tipo de procesadores. El emulador funciona como si realmente tuviera instalado este chip y podrás tener acceso a las mismas funciones que tendrías del otro modo: muestra registros, variables, marcas, memoria...
Emu8086 puede crear su propio sistema y grabar su código binario en un disquete. Incluye conexión para determinados dispositivos pero podrás añadirle los que necesites.
martes, 17 de marzo de 2020
2.11 Obtención de cadena con representación decimal.
Obtención de cadena con representación decimal
La conversión entre numeración binaria y hexadecimal es sencilla. Lo primero que se hace para una conversión de un número binario a hexadecimal es dividirlo en grupos de 4 bits, empezando de derecha a izquierda. En caso de que el último
grupo (el que quede más a la izquierda) sea menor de 4 bits se rellenan los faltantes con ceros.
En este modo, los datos son proporcionados directamente como parte de la instrucción.
Ejemplo:
Mov AX,34h ;
Copia en AX el número 34h hexadecimal Mov CX,10 ;
Copia en CX el número 10 en decimal
.COMMENT
Programa: Push Pop.ASM
Descripción: Este programa demuestra el uso de las instrucciones para el manejo de la pila, implementando la instrucción XCHG con Push y Pop
MODEL tiny
.CODE
Ejemplo:
Mov AX,34h ;
Copia en AX el número 34h hexadecimal Mov CX,10 ;
Copia en CX el número 10 en decimal
.COMMENT
Programa: Push Pop.ASM
Descripción: Este programa demuestra el uso de las instrucciones para el manejo de la pila, implementando la instrucción XCHG con Push y Pop
MODEL tiny
.CODE
Inicio: ;Punto de entrada al programa
Mov AX,5 ;AX=5
Mov BX,10 ;BX=10
Push AX ;Pila=5
Mov AX,BX ;AX=10
Pop BX ;BX=5
Mov AX,4C00h ;Terminar programa y salir al DOS
Int 21h ;
END Inicio
END
Mov BX,10 ;BX=10
Push AX ;Pila=5
Mov AX,BX ;AX=10
Pop BX ;BX=5
Mov AX,4C00h ;Terminar programa y salir al DOS
Int 21h ;
END Inicio
END

2.10 Manipulación de pilas
Manipulación de pilas
La pila es un grupo de localidades de memoria que se reservan para contar con un espacio de almacenamiento temporal cuando el programa se está ejecutando.
La pila es una estructura de datos del tipo LIFO (Last In First Out), esto

quiere decir que el último dato que es introducido en ella, es el primero que saldrá al sacar datos de la pila.
Para la manipulación de la pila ensamblador cuenta con dos instrucciones especificas, las cuales son las siguientes:
Push:
Esta instrucción permite almacenar el contenido del operando dentro de la última posición de la pila.
Ejemplo:
Push ax El valor contenido en ax es almacenado en el último espacio de la pila.
Pop:
Esta instrucción toma el último dato almacenado en la pila y lo carga al operando.
Ejemplo:
Pop bx El valor contenido en el último espacio de la pila se almacena en el registro
El siguiente ejemplo muestra como implementar la instrucción XCHG por medio de las instrucciones Push y Pop. Recuerde que la instrucción XCHG intercambia el contenido de sus dos operandos.
.COMMENT
Programa: Push Pop.ASM
Descripción: Este programa demuestra el uso de las instrucciones para el manejo de la pila, implementando la instrucción XCHG con Push y Pop
MODEL tiny
.CODE
Inicio: ;Punto de entrada al programa
Mov AX,5 ;AX=5
Mov BX,10 ;BX=10
Push AX ;Pila=5
Mov AX,BX ;AX=10
Pop BX ;BX=5
Mov AX,4C00h ;Terminar programa y salir al DOS
Int 21h ;
END Inicio
END
Programa: Push Pop.ASM
Descripción: Este programa demuestra el uso de las instrucciones para el manejo de la pila, implementando la instrucción XCHG con Push y Pop
MODEL tiny
.CODE
Inicio: ;Punto de entrada al programa
Mov AX,5 ;AX=5
Mov BX,10 ;BX=10
Push AX ;Pila=5
Mov AX,BX ;AX=10
Pop BX ;BX=5
Mov AX,4C00h ;Terminar programa y salir al DOS
Int 21h ;
END Inicio
END
Suscribirse a:
Entradas (Atom)