Informe de Laboratorio – Laboratorio – Practica Practica No. 3
César Alfonso Pallares Trespalacios Cód. 88160768 Martha Lucía Parada Peláez Cód: 60258814 Alexander Herrera
Presentado a: Ing. Jorge Enrique Ramírez Grupo: 301302_9
Universidad Nacional Abierta y a Distancia – UNAD – UNAD Escuela de Ciencias Básicas, Tecnología e Ingeniería
Noviembre de 2017
INTRODUCCIÓN
En el siguiente informe de laboratorio, se utilizará un emulador, el cual nos permitirá ejecutar instrucciones en código asamblea, y observar como un ordenador procesa estas instrucciones, se realizarán tres ejemplos, donde se sumará o restar valores.
1- SITIO WEB – SOFTWARE EMULADOR DE LENGUAJE ENSAMBLADOR MSX88
MSX88 (Nacional, 2017) http://ac-ipn.blogspot.com.co/p/herramientas-titulo-descargasimulador.html
MSX88
2. INFORME DE LABORATORIO
Sección 1: Descargar el archivo Anexo 1. Suma de dos números en MSX88. Allí se encuentra el código para sumar los números 10H y 20H. El resultado se almacena en AX. En este documento se explica cómo es el flujo de los datos y las instrucciones; se muestra de igual manera a través de imágenes que ocurre en cada ciclo de instrucción y como el apuntador de instrucción avanza en las diferentes direcciones de memoria. Familiarícese con este proceso, para ello digite el código y ejecútelo en MSX88 y compare en tiempo real al momento de ejecutar el programa con el anexo 1 para que entienda perfectamente todo el proceso. Una vez haya hecho esto, entonces proceda a realizar las siguientes actividades: 1.
Escribir un programa que realice la suma de dos datos (el 25h y el 30h) que se
encuentran en los registros AX y DX del procesador. El resultado lo almacenará en AX. Guardar el código con el nombre Programa.asm. Seguir los pasos descritos en el laboratorio 2 para ensamblar, enlazar y ejecutar el programa. 2.
Después de ejecutar el programa en MSX88, utilizar la tecla F6 para observar la
Ejecución Ciclo de instrucción a Ciclo de instrucción tal como aparece en la diapositiva Anexo1, y verificar los ciclos de instrucciones de todo el proceso desde la búsqueda del código de operación, decodificación hasta el resultado. Comparar en tiempo real el programa ejecutado, con lo documentado en las diapositivas. Con este ejercicio tome los pantallazos respectivos y documéntelo tal como está en el Anexo1.
Paso 1
Editor de texto – PROG4.ASM Paso 2
Se ensambra el rchivo PROG4.ASM
Paso 3
Se enlaza el archivo PROG4.O
Paso 4
Se ejecuta la primera intrucción, ubicandose en la posición de memoria 2000H
Paso 5
Asigna en el campo AX el valor de 10H, y DX el valor de 20H
Paso 6
Realiza la operación en el ALU, trayendo los valores AX y DX, y dando como resultado el 30H
Paso 1
Código Fuente – PROG5.ASM Paso 2
Ejecuta la primera intrucción, IP inicia 2000 , el contador de intrucciones IP se inclementa a 2001
Paso 3
El contador de instrucción IP, 2001, lee la segunda linea de código, y asigna en memoria 2001 el valor 25 IP 2002, limpia la lina 2002 y salta a IP 2003 para esperar la nueva intrucción.
Paso 4
IP 2003, se asigna el valor 30 que se va a ubicar en DX, IP 2004 limpia la linea de codigo y espera la nueva intrucción
Paso 5
IP 2005, Llama el valor de AX, IP 2006, Llama el valor de DX, IP 2007, Envia intrucción ADD al ALU, ALU ej ecuta la operación
Paso 6
IP 2008 y IP 2009, limpia la intrucciones y da por te rminado el código
Sección 2: Diseñar dos programas con las siguientes condiciones: 1. Escribir un programa que realice la multiplicación de dos números. Realizar la ejecución de Ciclo de instrucción a Ciclo de instrucción (F6). Documentarlo tal como aparece en el anexo 1, escribiendo lo sucedido por cada ciclo de instrucción hasta su resultado. Mostrando posiciones de memoria igualmente. 2. Escribir un programa que realice la división de dos números. Realizar la ejecución de Ciclo de instrucción a Ciclo de instrucción. Documentarlo tal como aparece en el anexo 1, escribiendo lo sucedido por cada ciclo de instrucción hasta su resultado. Mostrando posiciones de memoria igualmente.
MULTIPLICACIÓN Paso 1
Código fuente – Multiplicación de dos valores
Paso 2
Coloca los dos valores en AX y BX Paso 3
Entra al ciclo de multiplicar donde toma el valor de la primera variable, la suma con el mismo, y decrece la otra variable, este proceso se realiza hasta que la segunda variable quede en cero Paso 4
El valor de la variable Num2, se encuntra en Cero, el cilco se acaba, y el valor de la multiplicación se depocita en DX, por lo tanto 3H * 2H = 3H+3H= 6H
DIVISIÓN
Paso 1
Paso 2
Este es un proceso de división, en el cual se realiza una verificación, si e l divisor es menor que el dividiendo, si es asi, se realiza una multiblicacion x 10, para poder realizar la divión, y llamando subruinas para restar hasta que el residuo sea cero.
CONCLUSIONES
Para las operaciones de multiplicación, se realiza sumas.
Para el proceso de división se realiza verificación de los números, y se realiza restas.
BIBLIOGRAFÍA
Nacional, I. P. (19 de 11 de 2017). Obtenido de http://ac-ipn.blogspot.com.co/p/herramientastitulo-descarga-simulador.html