You are on page 1of 12

Arquitectura de computadoras

2013-V

UNIVERSIDAD NACIONAL DEL


CALLAO
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRRONICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA

SOLUCIONARIO DE LA
SEGUNDA PRACTICA CALIFICADA
CURSO

Arquitectura de Computadoras

PROFESOR :

Ing. Zenn Cucho Mendoza

ALUMNO

Monteza Asto Alvaro Wilfredo

062588-B

CODIGO

2013
Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

2013-V

ARQUITECTURA DE COMPUTADORAS
(Practica N2)
(Semestre 2013-V)
Pregunta 1:
a) Explique como se realiza el proceso de interrupcion de un programa. Porque es importante el uso de la
Pila.
b) Cuntos tipos de interrupcion conoce?
c) Imlemente un programa para er en la pantalla el mensaje de texto: UNAC 2013, use la funcion INT 21
Solucion:
a) En la interrupcion de un programa primero el procesador chequea si hay interrupciones, indicado por una
seal de interrupcin, si no hay interrupcin, busca la prxima instruccin, y si hay interrupciones
pendientes: suspende la ejecucin del programa actual, salvar el contexto, pone en el PC la direccin de
comienzo de la rutina de atencin de la interrupcin (handler), procesa la interrupcin y reestablece el
contexto para continuar con la ejecucin del programa interrumpido.
La pila es donde se guarda la direccion antes de la ejecucion, para luego de terminada carga de ella esta
direccion para asi volver a la instruccion en donde se quedo.
b) Internas (excepciones), Externas y de Software
c) Imlemente un programa para er en la pantalla el mensaje de texto: UNAC 2013, use la funcion INT 21

Para este programa guardamos en la memoria el texto text y llamamos a la funcion 09H para lanzar en pantalla
lo que se guardo en el registro de datos DX a travez de la interrupcion 21H

Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

2013-V

Pregunta 2:
Implemente un programa para mostrar una cuenta ascendente entre 3 y 21, y se repita, en un display
que dispone el EMU8086. Emplee la subrutina (procedimiento) de nombre retardo de 800ms para
poder visualizar la cuenta apropiadamente. Puerto de salida: 199H
a) Diagrama de flujo
b) Cdigo
Solucion:

a) Diagrama de flujo
INICIO

Num = 3

Lanzar a Num por el


puerto 199
Llamar a retardo

Num = Num + 1

No

Si

Num = 22

Retardo

Retardo =3Fh

Retardo = Retardo - 1

No

Retardo = 0

Si

Fin
Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

2013-V

En el siguiente programa, comenzamos cargando en el registro AX nuestro primer nmero 3, luego


lo lanzamos a travs del puerto 199 y llamamos a la sub rutina retardo para su visualizacin.
Seguido de esto incrementamos el registro AX y luego lo comparamos con el numero tope, que en este
caso seria 22, mientras no sea igual a 22 saltara hacia la etiqueta repite y cuando sea igual
saltara a la etiqueta reinicio, para as reiniciar la cuenta.
En la sub rutina retardo cargamos en el registro BX el nmero 3Fh luego lo decrementamos de uno
en uno y al final lo comparamos con cero, mientras no sea igual saltamos a la etiqueta repetir y
cuando lo sea finalizamos la sub rutina retornando al programa principal.

Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

Universidad Nacional del Callao

2013-V

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

2013-V

Pregunta 3:
El programa corresponde a l lenguaje C, escriba el programa en el lenguaje ensamblador MIPS e
INTEL (8086).

Solucion:

Cdigo ensamblador del programa en C ejecutado en el EMU8086:

Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

2013-V

La simulacin:

En la pantalla de arriba ya se compar una vez y sum 5 al registro AX.

En la pantalla de arriba ya sumo dos veces por lo tanto AX = 0Ah y ya no hace el salto.

Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

2013-V

Cdigo ensamblador del programa en C ejecutado en el WINMIPS64:

Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

Universidad Nacional del Callao

2013-V

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

2013-V

Pregunta 4:
Implemente con lenguaje VHDL.
El circuito comparador cuyas entradas A y B son de 4 bits, y tiene 3 salidas para indicar si A>B, A<B
y si son iguales.
a) Cdigo en VHDL
b) Diagrama de seales.
Solucion:

En la ENTITY vamos a crear 2 entradas A y B de 4 bits std_logic_vector, adems una entrada E de


habilitacin de 1 bit de tamao std_logic, y tres salidas de 4 bits std_logic_vector.
Para la ejecucin de este programa utilizamos un PROCESS, dentro de este ponemos la lista de
sensibilidad que sean E (enable o habilitador), A (entrada A), B (entrada B). Recordemos que la lista
de sensibilidad har que se ejecute el PROCESS en el momento que cambie cualquiera de estas tres.
Dentro del PROCESS utilizaremos el case para el ENABLE (E) activndose en el estado HIGH (1
lgico) y desactivndose en estado LOW (0 lgico), ya activado el ENABLE dispondremos de las

Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

2013-V

salidas a travs de un IF para seleccionar la salida previa comparacin, cabe resaltar que para los
operandos aritmticos (<,>, etc.) se deben utilizar la librera siguiente:
IEEE.STD_LOGIC_ARITH.ALL

Ahora procedemos con la simulacin

Se hicieron las comparaciones de los nmeros 5 con 5 y dio como resultado en igual = 1 y los dems
= 0.
Para los nmeros 6 y 0 may = 1 y los dems = 0.
Para los nmeros 0 y 2 men = 1 y los dems = 0.

Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

Arquitectura de computadoras

2013-V

Pregunta 5:
Implemente el siguiente multiplexor con lenguaje VHDL.
a) Cdigo en VHDL
b) Diagrama de seales.
Solucion:

En la ENTITY vamos a crear 4 entradas A, B, C y D de 4 bits std_logic_vector, adems una entrada


Control de seleccin de 2 bits de tamao std_logic_vector, y una salida F de 4 bits std_logic_vector.
Para la ejecucin de este programa utilizamos un with select para cada seal de control tomada
como un vector de 2 bits y ponindolo para cada valor posible de F (ya sea A, B, C, D o 0000)
Y la simulacin comprueba el funcionamiento

Universidad Nacional del Callao

Facultad de Ingeniera Elctrica y Electrnica

You might also like