Laboratorio 2

October 22, 2017 | Author: AndyStinsson | Category: Computer Memory, Computer Program, Computer Programming, Assembly Language, Central Processing Unit
Share Embed Donate


Short Description

Descripción: Laboratorio 2 arquitectura de computadores UNAD 2015...

Description

ARQUITECTURA DE COMPUTADORES

ACTIVIDAD: Laboratorio 2

Jorge Eduardo Herrera CODIGO: 1020.782.601 GRUPO: 2

TUTOR: Wilson Hernán Pérez Correa

UNIVERSIDAD ABIERTA Y A DISTANCIA – CEAD J.A.G ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA (ECBTI) INGENIERIA DE SISTEMAS BOGOTA, CUNDINAMARCA

Introducción

La programación dentro de la arquitectura de computadores, desempeña un papel fundamental para su funcionamiento. Esta se encarga de añadir a los diferentes elementos hardware, la inteligencia necesaria para reconocer sus funciones y desempeñar diferentes actividades. Para este segundo laboratorio, se propone una serie de ejercicios desarrollados con el simulador msx88, el cual permite observar como una computadora realiza los diferentes procesos de análisis. Se espera estar en capacidad de identificar las características de un lenguaje ensamblador y la importancia del diseño de software dentro de la arquitectura de computadores.

ACTIVIDADES

En la práctica se mostrará el funcionamiento interno de un computador y se debe realizar las siguientes actividades: Sección 1: Escribir un programa que realice la suma de dos datos inmediatos (el 20h y el 30h) que se encuentran en los registros AX y DX del procesador. El resultado lo almacenará en AX. Sitio web donde descargó el software a utilizar:

http://msx88.diatel.upm.es/bbs_msx88/EXE/msx88.zip 1. Abrir una sesión de MSX88. 2. Crear un archivo llamado PROG1.ASM con el siguiente código en ensamblador: 3. Teclear en la línea de comandos EDIT PROG1.ASM. Una vez que se haya abierto el programa teclear el código siguiente, guardar y salir del editor. ORG 2000h MOV AX, 20H MOV DX, 30H ADD AX, DX END

4. Ensamblar el archivo anterior. Para ello, en la línea de órdenes teclear: ASM88 PROG1.ASM;

5. Enlazar el archivo PROG1.O creado. Desde la línea de órdenes escribir: LINK88 PROG1.O;

6. Ejecutar el programa MSX88. Para ello escribir en la línea de órdenes MSX88

7. Cargar el programa PR1.EJE en el simulador, para ello en la pantalla de órdenes, escribir LPR1. Una vez en el simulador, podremos pulsar la tecla F6 para ejecutar instrucción a instrucción el programa anterior, o mediante la tecla F7 para ejecutar cada instrucción en cada uno de sus ciclos de máquina. PANTALLAZOS

Análisis: La CPU toma la orden en su secuenciador e inicia un recorrido a través de las direcciones de memoria seleccionando una y moviéndose hacia el decodificador para llegar a la sección de órdenes. Repite la secuencia almacenando el valor 30 en la unidad DX, la unidad procede a llevar los dos valores a la unidad ALU, esta ejecuta la suma y guarda en resultado en la unidad AX, de acuerdo a lo señalado en el programa fuente.

Sección 2: Cambiar los datos que se suman por los datos 9876h y 2000h. Repetir los pasos de la sección 1 hasta terminar la simulación.

Pantallazos

Análisis: La información la toma la unidad IP decodificando, asignando una dirección de memoria y llevando esta información a la unidad de órdenes. El programa ahora busca las unidades de memoria AX y DX para almacenar sus valores, en esta ocasión realiza dos diferentes recorridos ya que la unidad solo almacena dos dígitos en cada memoria, así que primero guarda los dos últimos dígitos y después guarda los dos primeros dígitos. En cada recorrido la memoria realiza la misma secuencia, reduciéndose en uno el valor de la unidad IR, al igual que en el ejemplo anterior, cada datos es llevado a la ALU, esta brinda un resultado y este se guarda en la memoria AX.

Sección 3: Cambiar la operación aritmética. En vez de sumar se desea restar. Para ello, cambiar la instrucción ADD AX, DX por SUB AX, DX en el código. Repetir los pasos de la práctica 1a hasta terminar la simulación.

Pantallazos

Análisis: La unidad inicia su recorrido en la memoria IP, llevando esta información a una dirección de memoria y realizando el recorrido hasta la sección órdenes. La unidad busca la dirección de cada valor y guarda sus valores La unidad lleva los valores añadidos a la ALU y esta realiza la operación aritmética, llama la atención que el resultado no es numérico, por lo cual se identificar un factor en el cambio de operación. Sección 4: Cambiar el orden de los operandos en la práctica anterior. Escribir SUB DX, AX y observar que pasa con los flags de estado del computador.

Pantallazos

Análisis: El recorrido se inicia en la unidad IP, la cual busca una dirección de memoria para guardar el registro, para luego llevar a la unidad de órdenes, decodificando el programa. Los archivos se guardan en las direcciones AX Y DX. Se llevan los registros a la ALU y se genera un resultado el cual se guarda en DX, se puede observar como en cada recorrido se afectan las direcciones de memoria cambiando su valor a lo largo del recorrido.

Conclusiones

-

Un lenguaje ensamblador utiliza los principios más básicos de la programación y se requieren conocimientos previos para su manejo.

-

La CPU se encarga de llevar las decisiones del usuario a través de diferentes direcciones de memoria accediendo a la parte solicitada y ejecutando un procesamiento de información.

-

Un computador posee una programación en su BIOS, la cual le permite identificar una serie de programas que le permite utilizar los recursos de hardware.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF