You are on page 1of 11

UNIVERSIDAD NACIONAL JOSÉ MARÍA ARGUEDAS

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

ASIGNATURA DE ARQUITECTURA DE PROCESADORES

Guía de laboratorio N° 1
SIMULACIÓN DE MICROPROCESADORES

Ing. Carlos Yinmel Castro Buleje

 Reconocer las partes esenciales de un microprocesador a nivel lógico: contadores. 4 de EPIS SIMULACIÓN DE MICROPROCESADORES Objetivo General  Simular el funcionamiento de un microprocesador utilizando el software de simuproc.  Comprender e interpretar el funcionamiento del microprocesador a detalle. posiciones de memoria.  Implementar operaciones básicas de programa para simular el procesamiento del mismo en el software mencionado. registros. CARLOS YINMEL CASTRO BULEJE 2 . y pilas. Objetivos Específicos  Reconocer el entorno del software de simulación simuproc. Materiales y equipos  Un equipo de cómputo. Facultad: Ingeniería Escuela Profesional: Ingeniería de Sistemas Asignatura: Automatización Lugar de ejecución: Lab.  Software de simuproc AUTOMATIZACIÓN ING.

¿QUÉ ES SIMUPROC? SimuProc es un Simulador de un Procesador Hipotético con el cual podrás aprender las nociones básicas para empezar a programar en lenguaje ensamblador. en el cual se puede observar todo el proceso interno de ejecución del programa a través de cada ciclo del procesador.1. Partes del software SimuProc 1. CARLOS YINMEL CASTRO BULEJE 3 . Fundamento teórico 1. AUTOMATIZACIÓN ING.1. SimuProc con su gran variedad de instrucciones es un simulador con el cual tienes infinitas posibilidades de pruebas.Contador del programa (PC): Este campo almacena el número de instrucción a realizarse va incrementando en 1 según se va recorriendo las posiciones de memoria. Incluye soporte para números de punto flotante usando IEEE 754 y enteros desde .1.2GB hasta 2GB 1. ENTORNO DEL SOFTWARE DE SIMULACION SIMUPROC 1.

BX y CX. Módulo de entrada de instrucciones manuales: Este módulo permite ingresar de manera manual por el usuario instrucciones en el muy conocido lenguaje ensamblador.Registro de datos de memoria (MDR): En este registro se almacena el dato o el valor a que se hace referencia según las posiciones de memoria. 6. CARLOS YINMEL CASTRO BULEJE 4 . O: si el resultado no quepa en memoria. N: Si el resultado de la operación es negativo.Registro de direcciones de Memoria (MAR): este registro almacena o captura la posición de memoria que se carga. es decir hay desbordamiento de memoria. 5. permite el ingreso de dos valores y poder operarlas.Registro de Instrucciones (IR): Este registro almacena las instrucciones a ejecutarse.ALU: Unidad aritmético lógico.Registros Generales: Este bloque de registros tienen la finalidad de almacenar valores a procesar.Posiciones de memoria: Espacios de memoria para la carga de instrucciones. 3. 9. 4. AUTOMATIZACIÓN ING. 7. para ello internamente se manejan tres registros AX. C: si el resultado posee acarreo. cuyos campos son: Z: si el resultado de la operación es cero. 8.Pila o Stak: Estructura de datos en la que se almacena instrucciones auxiliares. 2. 10.Registro de Control: Este registro está compuesto por flags (indicadores del tipo bandera).

Control de simulación: Este apartado sirve para controlar la simulación desde su ejecución instantánea.Dispositivos de entrada y salida: Este modulo permite observar los resultados así como el ingreso de datos por teclado. para completar la instalación hacer clic en siguiente hasta finalizar. 15. Ingresar al software de Simuproc 3.Botón ejecutar: Este botón sirve para iniciar la simulación respectiva: 13. 14. para ello haremos clic en el botón 4. Se abrirá la calculadora.Calculadora: Permite utilizar una calculadora de bases y notación en punto flotante con y sin signo.Indicador del uso de la pila y memoria: Este indicador muestra el porcentaje de uso con respecto a la memoria principal y la pila mencionada anteriormente. ejecución por pasos y la velocidad de simulación. Procedimientos 1. Procederemos a ingresar a la calculadora del software de simuproc. 16. procederemos a realizar los siguientes cálculos con respecto a equivalencias: AUTOMATIZACIÓN ING. 11. 2.Editor: Carga un pequeño programa que permite editar código ensamblador así como cargarlo a memoria principal en bloque. CARLOS YINMEL CASTRO BULEJE 5 . 12. Instalar el software de Simuproc.

¿Qué expresa el primer bit? _____________________ 0 lo cual significa que es positivo. 16. 8 . 7 y base 13 y su representación en ASC II se obtiene: __________________ 1000000 (2) __________________ 100 (8) __________________ 40 (16) 121 __________________ (7) __________________ 4C (13) ________________ @ (ASC II) 5. como se puede apreciar este apartado nos permite representar números en punto flotante. Proceda ahora a hacer clic en el botón “Más Opciones”. CARLOS YINMEL CASTRO BULEJE 6 . a) convertir 64 en base decimal a base 2. (signos) b) ¿Que expresa los 8 bits siguientes?: _________________________________________________ 10000000 (exponenciales) c) ¿Qué expresa los bits siguientes? _________________________________________________ 00000000000000000000000 (mantisa) d) Según lo observado ¿Qué simboliza la notación Exponencial? simboliza la anotacion de numeros para acomodar los valores demaciados grandes o _________________________________________________ pequeños AUTOMATIZACIÓN ING. ingrese en base 10 los siguientes números y proceda a explicar los resultados: a) Ingrese en base 10 el número 2.

e) Que representa la mantisa. LDA: Carga en AX la posición de memoria especificada. ADD: Actualiza AX=AX+ dirección_de_memoria_especificada STA: Guarda el contenido de AX en la posición de memoria especificada. EAP: Escribe en pantalla el contenido de AX HLT: Termina el programa AUTOMATIZACIÓN ING. Bien. 7. CARLOS YINMEL CASTRO BULEJE 7 . _______________________________________________ representa la parte entera de un numero fraccionaria 6. _________________________________________________ Te presenta muchas ventajas de solucionar las operaciones matematicas y _________________________________________________ conversiones mas sufisticados para dferentes bases la que otros conversores _________________________________________________ no te brindan y ver como funciona un procesador es muy recomendable. que ventajas ofrece la calculadora de Simuproc a comparación de las calculadoras convencionales. Procederemos ahora a realizar la carga de un programa básico al software para ello introducimos las siguientes instrucciones en el aparatado de entrada de instrucciones manualmente: Seguidamente procederemos a explicar que hace cada una de las instrucciones: CLA: pone en 0 el registro acumulador (Ax): todos los registros poseen el último valor trabajado por lo que es una buena práctica poner en cero los registros.

Ahora proceda a cargar los datos en memoria que hacen referencia a las direcciones 00E y 00F haciendo doble clic sobre la memoria principal e indicando dos valores a criterio y hacer clic en modificar 9. Ingresar las instrucciones manualmente suele ser muy trabajoso en ocasiones. para ello simuproc prosee un editor de código que permite el ingreso fácil de instrucciones. CARLOS YINMEL CASTRO BULEJE 8 . y procedemos a ingresar las siguientes instrucciones: AUTOMATIZACIÓN ING. debe tener activada la casilla . para abrirlo hacemos clic en . Proceda a ejecutar el programa haciendo clic en . describa la secuencia de pasos que realiza el microprocesador para ejecutar este programa detalladamente: _________________________________________________ PC->MAR->MDR->IR(decodifica e incrrementa el pc) ->direccion(devuelve el valor) _________________________________________________ luego carga pc->mar->mdr->ir->registros(AX: carga el contenido de la direccion de memoria) _________________________________________________ ->luego pasa a estadistica y mostrar pantalla(muestra la operacion de la memoria) _________________________________________________ _________________________________________________ _________________________________________________ 10. 8.

Para poder enviar el código al editor de memoria hacer clic en 12. CARLOS YINMEL CASTRO BULEJE 9 . 11. STA 00E:________________________________________ guarda el contenido de AX en la posicion de memoria especificada. Proceda a simular el programa y explique que hace el programa instrucción a instrucción #SimuProc 1. Para poder cargar los datos en memoria principal hacer clic en 13. AUTOMATIZACIÓN ING. lee un valor del teclado y lo lleva al registro AX.2. LDT:____________________________________________ Resta AX = AX .el contenido de la dirección de memoria SUB 00E:________________________________________ EAP:____________________________________________ escribe en pantalla el contenido d AX HLT:_____________________________________________ termina el programa.0:__________________________________ simula la operacion que realiza el procesador CLA:____________________________________________ pone en 0 el registro acumulador AX LDT:____________________________________________ A carga en AX la posicion de memoria especificada.4.

STA: guarda el valor de AX. LDA: carga la dirección AX. MSG: muestra el resultado. STA: guarda el valor de AX LDT: lee el valor del teclado y lleva al registro AX. STA: almacena o actualiza en la posición de memoria. Investigación Complementaria Proceda a implementar el siguiente programa y describir la simulación respectiva instrucción a instrucción así como los resultados obtenidos haciendo una corrida manual y la simulación respectiva. EAP: escribe en pantalla el contenido del registro AX. CLA: inicializa AX en 0. CARLOS YINMEL CASTRO BULEJE 10 . MUL: multiplica el valor que se encuentra en AX. STA: guarda el valor de AX. AUTOMATIZACIÓN ING. LDT: lee el otro valor del teclado y lleva al registro AX. JNE: salta a la siguiente línea. HLT: indica que a finalizado la ejecución. DEC: sirve para el decremento en 1al STA013. INC: incrementa en 1 al valor inicial 0.

si el estudiante no entregó la ficha la fecha indicada tendrá una calificación de cero. Carlos Y. adecuado de los recursos. permanente. objetivos planteados práctica realizada. CARLOS YINMEL CASTRO BULEJE 11 . integralmente durante toda la ACTITUD práctica. HOJA DE CALIFICACIÓN GUÍA 03: Fundamentos básicas de MATLAB Alumno: MAYTAN VILCHEZ JUAN CARLOS Código de Estudiante: |___|___|___|___|___|___|___|___|___|___| 1 0 0 5 6 2 0 1 2 2 Docente: Ing. sin opción a reclamo. de manera estudiados. Castro Buleje Fecha____/____/____ EVALUACIÓN CRITERIO % 1-10 11-15 16-20 Nota Conocimiento Conocimiento regular de Conocimiento e CONOCIMIENTO deficiente de los los fundamentos interpretación clara 40% fundamentos estudiados. AUTOMATIZACIÓN ING. Es ordenado pero no Realiza el uso adecuado Realiza un uso hace el uso adecuado de los recursos. y devueltas la sesión próxima previamente sellados. responsable y 5% de los recursos. Es un observador Participa ocasionalmente Participa pasivo o lo hace sin positivamente e 5% coordinación. en la práctica. TOTAL 100% Nota Importante: Las fichas de calificación serán entregadas al docente al culminar la guía práctica para consolidar la calificación. Cumple con uno o el Cumple con más de del Cumple con la CONOCIMIENT APLICACIÓN 30% de los objetivos 50% de los objetivos totalidad de los 50% DEL O planteados en la plateados en la práctica.