El proyecto MOAB (Manejador y Ordenador de Árboles de Búsqueda) es una implementación práctica diseñada para familiarizar a los usuarios con la arquitectura 8086 y su lenguaje ensamblador. Este laboratorio proporciona una comprensión profunda de la compilación manual de C a ensamblador, incluyendo estructuras de datos y control, así como la interacción con el sistema de entrada/salida. Un aspecto destacado del proyecto es la implementación, compilación y ejecución de rutinas recursivas.
El programa desarrollado en este laboratorio permite la administración de un Árbol Binario de Búsqueda (ABB) y la realización de diversas operaciones sobre él. Estas operaciones incluyen agregar nuevos números al árbol, imprimir información relevante, y soportar varios formatos de almacenamiento interno. Además, el sistema mantiene una bitácora de ejecución detallada, registrando los parámetros leídos y las acciones realizadas.
- Manejo de Árboles Binarios de Búsqueda: Administración eficiente de estructuras de datos de árboles.
- Diferentes Modos de Almacenamiento: Soporte para modos de almacenamiento estático y dinámico del árbol.
- Interacción con Puertos de Entrada/Salida: Capacidad para leer y escribir en puertos específicos, facilitando la interacción con el hardware simulado.
- Bitácora de Ejecución: Registro detallado de todas las operaciones y comandos procesados.
Para ejecutar el programa MOAB, es necesario utilizar el simulador ArquiSim. Siga las siguientes instrucciones para iniciar el programa:
-
Preparación del Entorno: Asegúrese de tener instalada una versión compatible de Java en su sistema.
-
Ejecución del Simulador: Abra una terminal o línea de comandos y navegue hasta el directorio donde se encuentra el archivo
ArquiSim.jar
. -
Iniciar el Programa: Ejecute el siguiente comando para iniciar el simulador:
java -jar ArquiSim.jar
-
Interacción con el Programa: Una vez iniciado el simulador, podrá interactuar con el programa MOAB a través de los puertos de entrada y salida definidos.
El código fuente del proyecto está organizado en varios módulos y archivos, cada uno con una función específica en la implementación del ABB y sus operaciones. La estructura detallada y la descripción de cada módulo se pueden encontrar en los comentarios del código fuente.
Este proyecto es parte de un trabajo educativo y está abierto a mejoras y sugerencias. Si desea contribuir o necesita soporte, no dude en abrir un issue o un pull request en el repositorio.