Arquitectura de Computadoras Ii-2006 - 01-08-2006
Arquitectura de Computadoras Ii-2006 - 01-08-2006
Arquitectura de Computadoras Ii-2006 - 01-08-2006
Facultad de Ingeniería
Ingeniería de Sistemas
QUINTO SEMESTRE
SYLLABUS DE LA ASIGNATURA
ARQUITECTURA DE COMPUTADORAS
U N I V E R S I D A D D E A Q U I N O B O L I V I A
1
FACULTAD DE INGENIERIA
VISION DE LA UNIVERSIDAD
MISION DE LA UNIVERSIDAD
U N I V E R S I D A D D E A Q U I N O B O L I V I A
2
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
3
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
4
FACULTAD DE INGENIERIA
Segunda.
U N I V E R S I D A D D E A Q U I N O B O L I V I A
5
FACULTAD DE INGENIERIA
mínimo de 7 voltios, y puede funcionar choques, y que activan los conmutadores que
perfectamente con 9 y 12 voltios. están representados en el circuito y que van
conectados a las entradas RB2 y RB3 del
Dependiendo de la marca de los PIC. Se utilizara los conmutadores de un
servomotores que se utilicen, los colores en ratón viejo de ordenador.
su cableado pueden variar, pero por regla
general, tienen tres cables, el negro es el que Al principio del semestre se les proveerá el
se conecta a masa, el rojo es el que va al mapa de la estructura del robot además del
positivo de alimentación (entre 4,8 voltios y circuito del mismo, el programa deberá ser
7,2), y después el cable de control para la implementado durante el proceso en el
entrada de pulsos, normalmente es amarillo o semestre
blanco. Se podrá utilizar motores de Radio
Grabadoras en desuso de no poder acceder a El mencionado robot presentara total
servomotores. autonomía en su funcionamiento, una vez
activado.
Dos diodos led que deberán ser colocados en
las puntas de las antenas que detectan
U N I V E R S I D A D D E A Q U I N O B O L I V I A
6
FACULTAD DE INGENIERIA
APUNTES
U N I V E R S I D A D D E A Q U I N O B O L I V I A
7
FACULTAD DE INGENIERIA
1 TEMA # 1, TEMA # 2
2 TEMA # 2
3 TEMA # 3
4 TEMA # 4
5 TEMA # 4
6 TEMA # 4 EVAL PARC I
Presentación de
7 TEMA # 4
notas
8 TEMA # 5
9 TEMA # 5
10 TEMA # 6.
11 TEMA # 7
12 TEMA # 7 EVAL PARC II
Presentación de
13 TEMA # 8
notas
14 TEMA # 8
15 TEMA # 9
Presentación de
16 EVALUACION FINAL
notas
Presentación de
17 EVALUACION FINAL
notas
Presentación de
18 SEGUNDA INSTANCIA
notas
U N I V E R S I D A D D E A Q U I N O B O L I V I A
8
FACULTAD DE INGENIERIA
WORK PAPER # 1
U N I V E R S I D A D D E A Q U I N O B O L I V I A
9
FACULTAD DE INGENIERIA
A esta idea adhirió Ada Lovelace, hija del “programar”... tal como lo había escrito Ada
poeta Lord Byron y con aptitudes matemáticas. Lovelace 120 años antes!!!
Publicó un artículo sobre la máquina analítica
que incluía el primer programa para
computadora. Se asoció a Babbage aportando COMPUTADOR DIGITAL.
mayores alcances a su idea y corrigiendo
errores de su trabajo. PRIMERA DEFINICION
“La computadora es una maquina digital y
“La máquina analítica no es capaz de crear sincrónica, con cierta capacidad de calculo
nada, sin embargo puede hacer cualquier cosa numérico y lógico, controlado por un programa
que sepamos ordenarle” Ada Lovelace. almacenado, y con posibilidad de
comunicación con el mundo exterior”
Pero la tecnología de la época no bastaba
para hacer realidad la máquina. El mundo aún ¿Qué significa esto?
no estaba listo para las computadoras, y no lo
estaría por cien años más. Es digital porque dentro de la computadora las
señales eléctricas que se manejan y la
DE LA CALCULADORA A LA información que se procesa se representa en
COMPUTADORA... LA GRAN DIFERENCIA forma discreta, por medio de valores binarios
Si bien las computadoras nos acompañan (0 y 1).
desde hace apenas medio siglo, sus raíces
van mucho más allá de la máquina analítica Además se afirma que es sincrónica, es decir
concebida por Babbage, y son producto de que realiza las operaciones coordinada por un
siglos de meditación y esfuerzo intelectual. reloj central que envía pulsos de sincronismo a
todos los elementos que componen la
Durante años el esfuerzo tecnológico estuvo computadora. Esto significa que todas las
en calcular: ábacos, calculadores mecánicos, operaciones internas se realizan en instantes
circuitos electromecánicos, circuitos de tiempo predefinidos y coordinados con el
electrónicos. El objetivo era obtener la mayor reloj.
velocidad posible para alguna combinación de
las operaciones matemáticas básicas.
Internamente posee una capacidad de cálculo
numérico y lógico, en un subsistema conocido
Aún las primitivas computadoras y las primeras
como unidad aritmético”lógica (UAL).
aplicaciones industriales fueron de cálculo fijo
Normalmente las operaciones que pueden
(aunque complejo) que debía hacerse a la
realizarse en ella son muy simples (suma,
mayor velocidad posible. Los componentes
disyunción, conjunción, comparaciones).
electrónicos más “famosos” eran las Unidades
Aritmético”Lógicas que realizaban cálculos
El hecho de que sea controlada por programa
simples a gran velocidad.
es quizás el punto más importante que
diferencia a una computadora de una
El salto conceptual de las "máquinas de
calculadora. Significa que internamente se
calcular" a la computadora fue comprender
tienen órdenes o instrucciones almacenadas,
que el cálculo era sólo uno de los elementos
que la computadora podrá leer, interpretar y
de interés para la computación. Aún más,
ejecutar ordenadamente.
representaba tal vez la línea tecnológica más
“fácil”.
Además, está comunicada con el mundo real,
que es analógico. Esto significa que puede
El verdadero desarrollo estaba en poder
realizar operaciones de entrada y salida con el
generalizar la utilización de “la máquina” para
mundo real, a través de dispositivos periféricos
cualquier aplicación que se pudiera
U N I V E R S I D A D D E A Q U I N O B O L I V I A
10
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
11
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
12
FACULTAD DE INGENIERIA
2. ¿Cuál cree que es la diferencia del 4. Los gráficos vistos en clase indican un
software que posee una máquina crecimiento de la velocidad y una
fotográfica moderna (con “programas”), el disminución del costo y el tamaño de las
controlador de un lavarropa automático y computadoras en los últimos años. Trate
una PC? de obtener algunos datos numéricos al
3. Investigue el tiempo de vida medio sin respecto y graficarlos (por ejemplo la
fallas de una válvula (o tubo de vacío), de evolución de la velocidad de
un transistor y de un circuito integrado procesamiento en las PCs en los últimos
moderno. ¿Tiene idea de cuántos 10 años o el costo por MB de memoria)
transistores por mm2 hay en un circuito
integrado de memoria actual?
WORK PAPER # 2
U N I V E R S I D A D D E A Q U I N O B O L I V I A
13
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
14
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
15
FACULTAD DE INGENIERIA
La UAL es la parte de la computadora que 1. ¿Qué opina Ud. de lo que decía Turing
ejecuta realmente las operaciones aritméticas y respecto de la Inteligencia?
lógicas sobre datos. Todos los otros elementos 2. ¿Cuál cree que es la diferencia del
del sistema de cómputo (UC, registros, software que posee una máquina
memoria, entrada/salida) están principalmente fotográfica moderna (con “programas”),
para traer datos a la UAL para que ésta los el controlador de un lavarropa
procese y luego tomar los resultados y automático y una PC?
comunicarlos. 3. Investigue el tiempo de vida medio sin
fallas de una válvula (o tubo de vacío),
Una UAL, y por lo tanto todas las componentes de un transistor y de un circuito
en la computadora están basadas en el uso de integrado moderno. ¿Tiene idea de
simples dispositivos lógicos digitales que cuántos transistores por mm2 hay en
pueden almacenar dígitos binarios y realizar un circuito integrado de memoria
operaciones lógicas simples (operaciones actual?
booleanas). 4. Los gráficos vistos en clase indican un
crecimiento de la velocidad y una
Los datos son presentados a la UAL en disminución del costo y el tamaño de
registros, y los resultados de una operación son las computadoras en los últimos años.
almacenados en registros. La UAL también Trate de obtener algunos datos
actualiza algunas señales (banderas o flags) numéricos al respecto y graficarlos (por
como resultado de una operación. La UC ejemplo la evolución de la velocidad de
provee señales que controlan la operación de la procesamiento en las PCs en los
UAL, y el movimiento de los datos desde y últimos 10 años o el costo por MB de
hacia la UAL. memoria)
WORK PAPER # 3
U N I V E R S I D A D D E A Q U I N O B O L I V I A
16
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
17
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
18
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
19
FACULTAD DE INGENIERIA
Todos los tipos de memoria RAM ventaja. Sin embargo todos los
pierden la información cuando hay ausencia de microprocesadores tienen un número
energía. limitado de registros (por ejemplo
menos de 300). ¿Ud. entiende por qué?
CUESTIONARIO WORK PAPERS 3 En general la memoria interna o propia
de una computadora es varias veces
5. Investigue los valores de los tiempos menor que la memoria externa
“humanos” (en palabras por minuto) al accesible por el mismo procesador (por
vincularse con una computadora (al ejemplo 64 MB de RAM contra 10 GB
teclear, oir o hablar) y de los tiempos de disco). ¿Puede Ud. dar la razón
“electrónicos” de procesamiento (en principal de esta característica?.
veces por segundo) para guardar 1000 7. En algunas computadoras se duplican
palabras en memoria principal, realizar los buses, por ejemplo el de datos y el
1000 sumas u obtener 1000 hojas de de direcciones. También en ocasiones
papel impresas en forma completa. se duplican (o multiplican) las unidades
Verifique la rapidez de una de cálculo aritmético-lógico. ¿Cuál es el
computadora respecto al ser humano. beneficio? ¿Se aplican estas técnicas a
6. Tener muchos registros en una UCP de las PCs comerciales de uso masivo?.
computadora suele considerarse una
WORK PAPER # 4
U N I V E R S I D A D D E A Q U I N O B O L I V I A
20
FACULTAD DE INGENIERIA
Además de la UCP y un conjunto de módulos Megabytes ( 450 disquetes o 100 libros cada
de memoria, el tercer elemento clave de un uno de 2000 paginas). Bajos costos de
sistema de cómputo es un conjunto de módulos producción. Desde el año 2003 es más
de entrada/salida (E/S). Cada módulo realiza la económico producir un CD que un disquete.
interfase con el bus del sistema y controla uno o Ninguna influencia magnética externa puede
más dispositivos periféricos. Un módulo de E/S influir en los datos. El CD esta recubierto con
no es simplemente un grupo de conectores una capa de plástico que lo protege contra las
mecánicos que enlazan un dispositivo con el ralladuras del polvo o las raspaduras. La
bus del sistema, sino que contiene alguna información solo se puede grabar o borrar con
“inteligencia“, es decir, contiene lógica para aplicaciones especiales.
realizar las funciones de comunicación.
Las unidades de CD-ROM son necesarias
Un módulo de E/S es la entidad responsable de desde que los proveedores de hardware y
controlar uno o más dispositivos externos y de software dejaron de lanzar sus productos en
intercambiar datos entre estos dispositivos y la disquetes. Las unidades de disco compacto de
memoria principal y/o los registros de la UCP. sólo lectura (CD-ROM) se evalúan por su
Luego, el módulo de E/S debe tener una velocidad de lectura y todas tienen una
interfaz interna a la computadora (la UCP y la capacidad máxima de almacenamiento de 650
memoria principal) y una interfaz externa a la Mb.
computadora (el dispositivo externo).
Una unidad de velocidad simple (1X) lee a
Algunos canales están conectados a ranuras de 150kb por segundo, una de velocidad doble
expansión en la caja de la computadora, que (2X) lee a 300kb/s, y así sucesivamente hasta
permiten personalizar las máquinas insertando 52X empleados en computadores domésticos, o
placas de circuitos de propósito especial en 100X para uso profesional.
ellas. Otros canales están conectados a puertos
externos, esto es, puntos de conexión en la
parte exterior del chasis de la computadora.
Ambas formas de expansión simplifican la
adición de dispositivos externos o periféricos
para que la UCP pueda comunicarse con el
mundo exterior y almacenar información que se
usará después.
Por ejemplo uno de estos dispositivos son: Algunas unidades de CD-ROM tiene la función
de grabar sobre los discos compactos, estas
unidades se conocen como CD-RW o
Unidades de CD y DVD "Quemadores", ya que su funcionamiento es
quemar la superficie del disco compacto con un
CD-ROM es la abreviatura de Compact Disc - rayo láser cuyo objeto es grabar la información.
Read Only Memory, es un desarrollo avanzado
del Compac Disc Digital de Audio, fue El CD ROM tiene almacenada la información en
desarrollado en los años setenta por Philips y forma de espiral, a diferencia del disco duro o
Sony, presentado al público en 1974 y utilizado del disquete que almacenan la información en
comercialmente en computadores desde 1992. forma concéntrica, esto redunda en que la
cabeza lectora no tiene que trasladarse o hacer
El CD ROM se basa en la lectura óptica sin saltos para hacer una lectura continua.
contacto, utilizando como medio un rayo láser.
Un Cd ROM tiene una única pista de 0.6 u de
Entre las ventajas que presenta en CD-ROM ancho, con distancia entre pista de 1.6 u y casi
están; Gran poder de almacenamiento, 650
U N I V E R S I D A D D E A Q U I N O B O L I V I A
21
FACULTAD DE INGENIERIA
20.000 vueltas con una longitud superior a los medianas empresas están utilizando servidores
25000 metros. de CDs para servicios de Archivo y Biblioteca.
WORK PAPER # 5
U N I V E R S I D A D D E A Q U I N O B O L I V I A
22
FACULTAD DE INGENIERIA
Para abordar el estudio del vídeo es necesario Los monitores a color tienen mucha razón de
hablar de dos componentes: existir; El color es más natural a los ojos, La
multimedia (imágenes, animaciones, vídeo)
Monitores hacen excesivamente atractiva la computación,
Desde su aparición la computación ha tenido especialmente en la parte lúdica y recreativa, y
dos (2) modelos o vertientes de monitores; Los software educativo como el que está cursando
monitores monocromáticos, y Los monitores a sería casi imposible hacerlo en ambiente
color Cada uno con sus propias divisiones. monocromático.
El termino monocromático se debe a que los El tubo de rayos catódicos (CRT por sus siglas
monitores muestran texto e imágenes en un en ingles) es un tubo al vació con forma de
solo color, (mono=uno solo). embudo, en la parte angosta se encuentra un
cátodo que se energiza alcanzando
temperaturas muy altas, en la parte ancha se
encuentra una pantalla amplia tendiendo a ser
plana en cuya cara interior hay una capa o
lamina de fósforo.
PIXELES Y RESOLUCION
U N I V E R S I D A D D E A Q U I N O B O L I V I A
23
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
24
FACULTAD DE INGENIERIA
BARRIDO
ANCHO DE BANDA
La excitación del fósforo no es permanente, en
realidad el monitor excita un píxel y luego lo Se denomina ANCHO DE BANDA a la
hace con el píxel siguiente, haciendo en velocidad con que un monitor es capaz de
recorrido secuencial de filas y columnas. regenerar píxels en un segundo.
ENTRELAZADO
U N I V E R S I D A D D E A Q U I N O B O L I V I A
25
FACULTAD DE INGENIERIA
WORK PAPER # 6
U N I V E R S I D A D D E A Q U I N O B O L I V I A
26
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
27
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
28
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
29
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
30
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
31
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
32
FACULTAD DE INGENIERIA
WORK PAPER # 7
INTRODUCCIÓN AL PIC16F84.
Oscilador XT Oscilador RC
U N I V E R S I D A D D E A Q U I N O B O L I V I A
33
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
34
FACULTAD DE INGENIERIA
Faltaría añadir a este cuadro el registro mas #DEFINE: Otra instrucción para el
utilizado de todos, el acumulador (W) o ensamblador que usaremos será la
registro de trabajo. No se trata de un registro instrucción #DEFINE. Es parecido a EQU,
propiamente dicho ya que no tiene dirección solo que aquí no ponemos etiquetas a un
pero se usa constantemente para mover registro, podemos ponerla a una instrucción
datos y dar valore a las variables (registros). entera, Por ejemplo:
Por ejemplo, si queremos copiar la #DEFINE BANCO1 BSF STATUS,5 #DEFINE
información del registro 0Ch en el registro BANCO0 BCF STATUS,5
0Dh no podremos hacerlo directamente, A partir de ahora, cuando escribamos
deberemos usar una instrucción para cargar BANCO1 se pondrá a "1" el bit de selección
el valor del registro 0Ch en el acumulador y de banco y pasaremos al banco 1, al escribir
después otra instrucción para cargar el valor BANCO0 pasaremos al banco 0
del acumulador en el registro 0Bh. ORG: Indica al ensamblador la dirección (de
memoria de programa) donde se guardará la
La memoria RAM no solo se usa para instrucción que vaya a continuación. Por
almacenar nuestras variables, también se ejemplo:
almacenan una serie de registros que ORG 00H CLRF VARIABLE1
configuran y controlan el PIC. La instrucción CLRF está en la dirección de
memoria de programa 00H (será la primera
Podemos observar en la imagen que esta instrucción en ser ejecutada por el pic)
memoria esta dividida en dos bancos, el END: Se escribe al final del programa para
banco 0 y el banco 1, antes de acceder a un indicar que ya ha acabado. (es obligatorio, si
registro de esta memoria tenemos que no da error).
preguntarnos en que banco estamos, Etiquetas a direcciones de Programa: muy
generalmente se trabaja en el banco 0, ya útiles para usar con instrucciones CALL
veremos mas adelante como cambiamos de (Llamada a subrutina) o GOTO (Salto). Por
banco de memoria. ejemplo:
U N I V E R S I D A D D E A Q U I N O B O L I V I A
35
FACULTAD DE INGENIERIA
b. En la segunda columna se ponen las subrutina (una subrutina que llama a otra
instrucciones (BSF, CLRF, BTFSC... subrutina) o desde una interrupción
etc.) (enseguida las veremos).
c. En la tercera columna se ponen Los
registros o parámetros a los que El siguiente ejemplo muestra un programa
afecta la instrucción. que utiliza una subrutina de retardo a la que
d. En la cuarta columna se ponen los llama DELAY. Esta subrutina de retardo se
comentarios que creas pertinentes hace decrementando el registro CUENTA2
(cuantos mas mejor) seguidos de un desde FFh hasta 00h 16 veces (las veces que
punto y coma. se decrementa CUENTA2 son contadas hacia
atrás por CUENTA1) De esta forma se
SUBRUTINAS consigue perder tiempo (el tiempo perdido
Una subrutina o subprograma es una parte de con esta subrutina depende de la frecuencia a
programa que hace algo concreto y se repite la que opere el PIC)
a menudo, para ahorrar memoria y esfuerzo y
para hacer el programa mas comprensible se INTERRUPCIONES
agrupa en forma de subrutina. Una subrutina Cuando se produce una interrupción el PIC
se debe ejecutar siempre llamándola con la deja automáticamente lo que esté haciendo,
instrucción CALL y al final de dicha subrutina va directo a la dirección 04h de programa y
debe haber siempre un RETURN. El esquema ejecuta lo que encuentre a partir de allí hasta
de la derecha muestra como funcionan las encontrarse con la instrucción RETFIE que le
subrutinas: hará abandonar la interrupción y volver al
lugar donde se encontraba antes de
producirse dicha interrupción.
U N I V E R S I D A D D E A Q U I N O B O L I V I A
36
FACULTAD DE INGENIERIA
Cada ciclo de instrucción dura 4 veces el ciclo La solución es sencilla, basta con añadir un
del reloj del pic (para un reloj de 4MHz ==> pequeño retardo en nuestro programa desde
Ciclo reloj=0,25 µSeg ==> Ciclo instrucción = que se detecta el primer pulso hasta que se
4 X 0,25 = 1µSeg) vuelve a leer la entrada del pulsador. Dicho
retardo debe ser suficientemente largo para
Cuando lo usamos como contador (Por RA4) asegurar que cuando finalice ya se hayan
podemos determinar si el incremento se hará extinguido los rebotes, pero también
por flanco ascendente o descendente con el suficientemente corto para que sea
bit 4 del registro OPTION (TOSE) Podemos imperceptible para nosotros.
leer o escribir el registro TMR0 en cualquier En el siguiente ejemplo se cuentan los pulsos
momento. Cuando escribamos en él deja de introducidos al PIC por RB0. El esquema es el
contar durante dos ciclos, cuando lo leamos siguiente: Fíjate que cuando se acciona el
no pasa nada. pulsador la entrada RB0 se pone a "0". Para
evitar contar los rebotes se llama a una
Podemos asignar el prescaler al TMR0, si subrutina de retardo llamada REBOTE, esta
hacemos esto podemos elegir el factor en el subrutina funciona bien para osciladores de
que se verá dividido el conteo mediante los 4MHz.
bits del 0 al 2 del registro OPTION según la
tabla del factor de división. Por ejemplo, si
elegimos un factor de división de 1/2 tienen
que entrar 2 pulsos para que TMR0 se
incremente en uno, si está a 1/4 tienen que
entrar 4... etc.
U N I V E R S I D A D D E A Q U I N O B O L I V I A
37
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
38
FACULTAD DE INGENIERIA
GUÍA LABORATORIO N° 1
Título: Introducción al Simulador 8085 y Modos de Direccionamiento.
Lugar de Ejecución: Laboratorio de Cómputo
Elaborado por: Ing. Alida N. Paneque
Objetivos Específicos.
I. Procedimiento.
2.- Presionar la tecla TAB hasta que se activa la ventana correspondiente a las direcciones y códigos
de instrucción e introduzca el programa siguiente (el lenguaje de máquina que esta en negrillas).
Aparecerá a la par, el lenguaje de máquina (Opcode) o mnemónico de cada instrucción.
Otra opción puede ser:
Presionar el icono correspondiente a Editar y escribir el programa directamente en el editor,
previamente poniendo nombre al fichero.
Luego presionar el icono Ensambla para ensamblar el programa tecleado.
Presionar el icono Cargar, para traer el programa al simulador
U N I V E R S I D A D D E A Q U I N O B O L I V I A
39
FACULTAD DE INGENIERIA
5. ¿Qué concluye?
_________________________
7.- Utilizando su hoja de instrucciones, busque los códigos de operación correspondientes al modo de
direccionamiento inmediato y córralos en el simulador:
Ejemplo:
Dirección: Mnemónico: Opcode:
0000 MVI A, 12H ___ ___ ___
0002 LXI H, 0100H ___ ___ ___
0005 MVI M, A ___ ___ ___
0007 MVI A, 00H ___ ___ ___
0009 ADI 78H ___ ___ ___
000B SUI 0AH ___ ___ ___
000D ANI 0FH ___ ___ ___
Conteste lo siguiente:
¿Qué valores toman los siguientes registros al correr el programa paso a paso?
Para cada una de las instrucciones.
A___ PC________
A___ PC________
A___ PC________
A___ PC________
A___ PC________
U N I V E R S I D A D D E A Q U I N O B O L I V I A
40
FACULTAD DE INGENIERIA
A___ PC________
A___ PC________
A___ PC________
A___ PC________
A___ PC________
8.- Introduzca ahora el siguiente programa (de la misma forma que el anterior):
Dirección: Opcode: Mnemónico:
0000 3A 00 10 LDA 0100H
0003 3E 08 MVI A, 08H
0005 78 RRC
9.- Siempre con el modo paso a paso, ejecute la primera instrucción. ¿Qué dato fue cargado en el
acumulador? ______ ¿Qué modo de direccionamiento es? ______________________________
10.- Ejecute la siguiente instrucción. ¿Cuál es ahora el contenido del acumulador?__________ ¿Qué
modo de direccionamiento es? _________________________
11. Ejecute la última instrucción del programa. ¿Qué dato se cargó en el acumulador?________ ¿Por
qué?___________________
¿Que modo de direccionamiento es?__________________________
12.- ¿Qué diferencia hay entre los dos primeros modos de direccionamiento?
13.- Prepare las condiciones en el simulador para que antes que cada una de las siguientes
instrucciones sea ejecutada, el estado de la memoria de datos y de los registros internos del
microprocesador 8085 sea el que se muestra
Registros internos: Memoria de Datos
( F)= 00X0X0X1 1000H → [ F3 ]
(A)= 4AH 1001H → [ 25 ]
(B)= 8CH 1002H → [ 04 ]
(C)= FDH 2000H → [ A2 ]
(D)= C0H 2001H → [ 79 ]
(E)= 00H 3000H → [ 00 ]
(H)= 30H 3001H → [ FF ]
( L)= 00H 3002H → [ 20 ]
(SP)=4002H 4000H → [ AA ]
4001H → [ 86 ]
Especifique el contenido de la memoria y/o registros, inmediatamente después de ejecutada las
instrucciones siguientes.
U N I V E R S I D A D D E A Q U I N O B O L I V I A
41
FACULTAD DE INGENIERIA
NOTA:
LAS CONCLUSIONES SE PONDERAN EN 30%
U N I V E R S I D A D D E A Q U I N O B O L I V I A
42
FACULTAD DE INGENIERIA
GUÍA LABORATORIO N° 2
Título: Usos de instrucciones Aritméticas, Lógicas y el Registro Bandera.
Lugar de Ejecución: Laboratorio de Cómputo.
Elaborado por: Ing. Alida N. Paneque
Objetivos Específicos.
- Utilizar instrucciones aritméticas y lógicas disponibles en el P8085 para procedimientos de
cálculos.
- Manejar los bits de bandera del registro de estado por medio de instrucciones específicas.
I. Introducción Teórica.
El P posee un grupo de instrucciones lógicas que desarrollan las mismas funciones que las
compuertas lógicas AND, OR y XOR respectivamente. Es importante tomar en cuenta que estas
operaciones lógicas funcionan individuales e independientes de las otras para cada posición de bits.
Una de las aplicaciones de estas funciones lógicas es la de limpiar bits específicos de una palabra de
datos sin afectar a los otros bits. Esto puede hacerse uniendo una palabra en una de éstas funciones
con otra palabra denominada MASCARA la cual es escogida por el programador dependiendo de los
bits que se desee limpiar.
Además de las operaciones lógicas, existen operaciones aritméticas las cuales requieren de tres tipos
de instrucciones aritméticas:
1. Instrucciones de transferencia de datos entre los registros internos y Memoria.
2. Instrucciones de Control que establecen las condiciones para las instrucciones aritméticas o
indican las condiciones que resultan de éstas.
3. Instrucciones aritméticas propiamente dichas.
Un ejemplo de la utilidad de las banderas del registro de estado es, cuando se suman o restan dos
números de 8 bits, es posible que se genere un acarreo en los bits más significativos (MSB). Esto
ocurre cuando se rebasa la capacidad de la ALU y del Acumulador. Esto es detectable utilizando el bit
de acarreo ubicado en el registro de estado. Este registro es bastante útil para que el programador
pueda efectuar los ajustes en los datos o en el programa para compensar el acarreo.
REGISTRO DE ESTADO
S Z - AC - P - CY
SIGNO ACARREO
0 = Positivo 1 = Si
1 = Negativo PARIDAD 0 = No
CERO
1 = Nro. par de unos en A
0 = No
0 = Caso contrario
1 = Si
ACARREO
AUXILIAR
0 = No
1 = Si
U N I V E R S I D A D D E A Q U I N O B O L I V I A
43
FACULTAD DE INGENIERIA
II. Procedimiento.
1. Busque es su tabla los códigos de operación de las instrucciones AND, OR, y XOR. ¿Cuántos y
verifique cuáles son los modos de direccionamiento que existen para estas instrucciones?.
AND
OR
XOR
Siempre con el modo paso a paso, ejecute el programa. ¿Cuál fue el resultado obtenido en el
acumulador o en la dirección 0009H? (en binario)
________________________________
4. ¿Qué se obtiene en el registro A___, ¿Cómo se le llama al proceso que acaba de realizar con el
MSB del A? (busque en la introducción teórica)?
________________________________________________________________
5. Ahora cambie la instrucción ANA M del programa anterior por la instrucción ORA M y cambie los
datos a operar por 2A (MVI A, 2AH) en el Acumulador y 54 (MVI B, 54H) en la posición de memoria
(0100H). Corra el programa y anote el resultado obtenido:
________________________________________________________________
7. Cambie ahora la instrucción ORA M por la instrucción XRA M y los datos a operar por 23 en el
Acumulador y 67 en la posición de memoria. ¿Cuál fue el resultado obtenido al correr el programa?
__________________
U N I V E R S I D A D D E A Q U I N O B O L I V I A
44
FACULTAD DE INGENIERIA
1. Localice la letra F que está a la izquierda del Registro de Banderas, éste contiene en forma
hexadecimal el valor de la posición de bit para cada bandera.
2. Cambie el contenido del registro F con FF y utilice su repertorio de instrucciones para hacer un
programa que limpie y luego fije algunas de las banderas con los siguientes mnemotécnicos,
seguidos uno del otro.
a) Ejecute paso a paso el programa, verificando cada vez el estado de las banderas. Anote el F para
cada una de las instrucciones. ¿Qué significa el número en hexadecimal contenido en el F?
Suma:
Resta:
U N I V E R S I D A D D E A Q U I N O B O L I V I A
45
FACULTAD DE INGENIERIA
5. Ahora modifique el programa anterior para que el primer sumando sea el “minuendo” de una resta,
el segundo sumando sea el “sustraendo” y el resultado se ubique en las mismas localizaciones del
programa anterior. Recuerde que para la resta, se debe fijar el acarreo. Presente el programa
funcionando.
V. Investigación Complementaria.
1.- Presente el programa de la resta que hizo en la práctica.
2.- Escriba un programa que realice la multiplicación de dos números de un byte localizados
respectivamente en las direcciones de memoria 1000H y 1001H. El resultado de la multiplicación
quedará en la 1050H y el acarreo, si lo hubiera, en la 1051.
NOTA:
LAS CONCLUSIONES SE PONDERAN EN 30%
U N I V E R S I D A D D E A Q U I N O B O L I V I A
46
FACULTAD DE INGENIERIA
GUÍA LABORATORIO N° 3
Título: Uso de Contadores, TIMER 0.
Lugar de Ejecución: Laboratorio de Cómputo.
Elaborado por: Ing. Anthony Ortuño Vasquez
Objetivos Específicos.
- Utilizar el TIMER 0, para visualizar una cuenta ascendente en binario desde 0 hasta F y con una
frecuencia de 1 segundo.
I. Introducción Teórica.
Una de las labores más habituales en los programas de control de dispositivos suele ser deter¬minar
intervalos concretos de tiempo, y recibe el nombre de temporizador (timer) el ele¬mento encargado
de realizar esta función. También suele ser frecuente contar los impulsos que se producen en el
exterior del sistema, y el elemento destinado a este fin se denomina contador.
Si las labores del temporizador o contador las asignamos al programa principal robarían mucho
tiempo al procesador en detrimento de actividades más importantes. Por este motivo se diseñan
recursos específicamente orientados a estas misiones.
Los PIC16X8X poseen un temporizador/contador de 8 bits, llamado TMRO, que actúa de dos
maneras diferentes:
1. Como contador de sucesos, que están representados por los impulsos que se aplican a la
patita RA4/TOCKI. Al llegar al valor FF H se desborda el contador y, con el siguiente impulso,
pasa a 00 H, advirtiendo esta circunstancia activando un señalizador y/o provocando una
interrupción.
2. Como temporizador, cuando se carga en el registro que implementa al recurso un valor inicial
se incrementa con cada ciclo de instrucción (Fosc/4) hasta que se desborda, o sea, pasa de
FF a 00 H, y avisa poniendo a 1 un bit señalizador y/o provocando una interrupción
II. Procedimiento.
Sea el circuito de la figura:
U N I V E R S I D A D D E A Q U I N O B O L I V I A
47
FACULTAD DE INGENIERIA
En los LEDS conectados al puerto B del PIC se desea visualizar una cuenta ascendente en binario
desde 0 hasta F y con una frecuencia de 1 segundo, ininterrumpidamente.
Para la temporización, se utilizará el timer0.
Este temporizador/contador, se programará como temporizador, asignándole el preescaler.
A partir de él se conseguirá una base de tiempos, y repitiendo dicha base de tiempos obtendremos
1s.
DIAGRAMA DE FLUJO DIAGRAMA DE FLUJO
PROGRAMA PRINCIPAL DE LA RUTINA ESPECIFICA DEL TIMER 0
U N I V E R S I D A D D E A Q U I N O B O L I V I A
48
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
49
FACULTAD DE INGENIERIA
DIF`S # 1
UNIDAD O TEMA: 1
TITULO: COMPUTADORAS RISC VS CISC
FECHA DE ENTREGA:
En la evolución histórica de los microprocesadores hasta la actualidad, han surgido varias tendencias,
de acuerdo al tratamiento de los datos y las direcciones.
U N I V E R S I D A D D E A Q U I N O B O L I V I A
50
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
51
FACULTAD DE INGENIERIA
DIF`S # 2
UNIDAD O TEMA: 2
TITULO: ASSEMBLER 8085
FECHA DE ENTREGA:
U N I V E R S I D A D D E A Q U I N O B O L I V I A
52
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
53
FACULTAD DE INGENIERIA
DIF`S # 3
UNIDAD O TEMA: 3
TITULO: PROGRAMACIÓN DEL PIC16F84
FECHA DE ENTREGA:
U N I V E R S I D A D D E A Q U I N O B O L I V I A
54
FACULTAD DE INGENIERIA
U N I V E R S I D A D D E A Q U I N O B O L I V I A
55