Bitacora ChMaquina # 2

Documentación del proyecto

Implemente un Programa que corra sobre un computador y que realice una simulación gráfica de un chcomputador ficticio de funcionamiento básico.

El programa debe simular un procesador muy elemental y una memoria principal a través de un vector de hasta 9999 posiciones, las cuales pueden ser variadas al momento de iniciar el programa, se asume por defecto que el chcomputador empieza con 100 posiciones de memoria para facilitar el proceso de pruebas. El programa debe estar en capacidad de leer un conjunto de programas en un seudo lenguaje de máquina que llamaremos CHMAQUINA y los cargara en las posiciones disponibles de la citada memoria, leerá una instrucción por cadalínea de entrada.
Las primeras posiciones de la memoria estarán reservadas para el núcleo del sistema
operativo (kernel), el tamaño de este deberá poderse ingresar al iniciar la corrida del simulador, su valor por defecto es 10*z + 9 posiciones (donde z será el último digito de la cedula del estudiante).
El programa deberá realizar un chequeo de Sintaxis, produciendo un listado de errores si los hay, de lo contrario procederá a la carga definitiva del programa en memoria y quedará listo para ejecución del mismo bajo las reglas de corrida de múltiples programas como se indica más adelante.
En cualquier momento en la ejecución del programa podrá pedírsele al programa mostrar el mapa de memoria (es decir el Vector de memoria y sus posiciones, las variables, lo mismo que el valor del acumulador).

Reglas del ChMaquina

Se asumirá que el sistema operativo ocupa las primeras posiciones de la memoria, su
contenido para este proyecto no es importante y su tamaño se podrá variar solo al iniciar el ambiente de trabajo.
El programa utilizará un acumulador para registrar los valores de los cálculos y recibirá como nombre reservado “acumulador”.
Las posiciones de memoria que almacenen datos tendrán un nombre asociado que iniciara con una letra y máximo tendrá 255 caracteres. Cuando no se especifique lo contrario, la inicialización de variables se asume en cero si es numérico y blanco si es alfanumérico. Estas variables deberán ser creadas antes de ser usada y tendrá un nombre asociado.
Las instrucciones constarán de 2 partes; el código de la operación y el(los) operando(s)
dependiendo el tipo de instrucción.
El código de operación corresponde al nemónico del código de operación y éste puede ser:

 

tercera-clase-11.png

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s