8
REPÚBLICA BOLIVARIANA DE VENEZUELA INSTITUTO UNIVERSITARIO DE TECNOLOGÍA “SANTIAGO MARIÑO” MARACAIBO – ESTADO ZÚLIA INTEGRANTES: Carlos Luis, Fernández U. MICROPROCESADORES

Microprocesadores

Embed Size (px)

Citation preview

Page 2: Microprocesadores

1.- Registro e Instrucciones del Microprocesador

1.1.- Registro de Datos

1.2.- Registro de Direcciones

A- Contador de Programa

B.- Puntero de Pila

C.- Registros Índices

1.3.- Registro de Estado

1.4.- Instrucciones Aritméticas

1.5.- Movimiento de Datos

1.6.- Instrucciones Lógicas

1.7.- Instrucciones de Comparación

1.8.- Instrucciones de Salto

- Condicionales

- Incondicionales

1.9.- Instrucciones de Entrada/ Salida

1.10.- Instrucciones de Control

1.11.- Instrucciones de Bit

1.12.- Instrucciones de Desplazamiento

2.- Modo de Direccionamiento

2.1.- Direccionamiento Inmediato

2.2.- Direccionamiento Implícito

2.3.- Direccionamiento Absoluto

2.4.- Direccionamiento Directo Relativo

2.5.- Direccionamiento Indirecto

2.6.- Direccionamiento Directo Absoluto

2.7.- Direccionamiento por Registro

2.8.- Direccionamiento por Registro Indirecto

2.9.- Direccionamiento Inmediato

1- Registro e Instrucciones del Microprocesador

Page 3: Microprocesadores

Dentro del microprocesador hay una serie de memorias que, al estar

internas, este maneja de forma especial, estas posiciones de memoria interna

llamadas registros pueden tener una utilidad general o una utilidad específica,

los registros más generalizados son:

1.1- Registro de Datos: son utilizados para las operaciones aritmético –

lógicas, manipulación de datos, etc.

1.2.- Registro de Direcciones: son aquellos que el microprocesador utiliza

para acceder a una posición del mapa de memoria, hay fundamentalmente

tres:

A.- Contador de Programa, es el registro que normalmente se utiliza para leer

o escribir datos del programa.

B.- Puntero de Pila, es el registro que el microprocesador utiliza para guardar

y recuperar datos de uso fundamentalmente interno, el registro define la

posición de memoria donde se encuentra dichos datos.

C.- Registros Índices, son utilizados para acceder a posiciones de memoria

de forma relativa.

1.3.- Registro de Estado, es un registro en el cual cada bits da una

información específica como puede ser que la última operación a dado

resultado positivo, negativo, ha sido cero, etc.

Por otra parte una de las principales características de todo

microprocesador es disponer de un buen conjunto de instrucciones que le den

la mayor versatilidad posible. Se establecen los siguientes grupos, tipos o

conjuntos de instrucciones:

1.4.- Aritméticas: Son las instrucciones que realizan operaciones de tipo

aritmético como sumas, restas, incrementos, decrementos, etc. Todas las

operaciones de este tipo afectan al registro de estado, es decir a los flags.

1.5.- Movimiento De Datos: Este tipo de instrucciones de movimiento o

transferencia de datos, permiten realizar una copia del contenido de un registro

o dirección de memoria (origen), en otro registro o dirección de memoria

(destino), sin alterar el contenido del origen.

1.6.- Instrucciones Lógicas: Realizan operaciones lógicas entre los

operandos, afectan a los flags según sea el caso y las operaciones se realizan

bit a bit entre los datos.

Page 4: Microprocesadores

1.7.-Instrucciones De Comparación: Son operaciones de restar o

operaciones XOR entre dos operandos, afectan a los flags pero no se

almacena el resultado.

1.8.- Instrucciones de Salto: Son instrucciones de modificación de secuencia

que alteran la ejecución normal del programa, cargando el contador de

programa con la nueva dirección en la que deseamos continúe ejecutándose el

programa. Los saltos o bifurcaciones pueden ser:

- Condicionales: Cuando son controlados por el estado de un indicador o flag,

y basándose en dicho estado se decide si se salta o no.

- Incondicionales: Cuando modifican el contador de programa sin condición

previa. Dentro de cada uno de estos tipos, podemos encontrar además la

particularidad de que al efectuar los saltos se realicen con posibilidad de

retorno o no.

1.9.- Instrucciones de Entrada/Salida: Son en realidad instrucciones de

transferencia, pero no entre registros o posiciones de memoria, sino con

elementos periféricos que permiten la comunicación del microprocesador con el

exterior.

1.10.- Instrucciones De Control: Sirven para actuar internamente sobre el

microprocesador, provocando detenciones en la ejecución del programa, etc.

1.11.- Instrucciones De Bit: Trabajan o tratan bits independientes.

1.12.- Instrucciones De Desplazamiento: Desplazan o rotan hacia la

izquierda o hacia la derecha los bits de un registro (acumulador).

2.- Modos de Direccionamiento:

Los modos de direccionamiento son aquellos procedimientos empleados

por el microprocesador para poder acceder a determinados operandos,

instrucciones, posiciones de memoria, registros de entrada/salida, etc. Por

tanto el objeto del direccionamiento es un valor o dato que se encuentra en un

lugar de la memoria, en algún registro o en la propia instrucción. Los diferentes

modos de direccionamiento que pueda emplear un microprocesador le

proporcionan un determinado nivel de potencialidad, permitiéndole manejar

datos y realizar operaciones con mayor facilidad. En general podemos

diferenciar los siguientes tipos o modos de direccionamiento:

2.1.- Direccionamiento Inmediato: En este caso el objeto (un operando) se

encuentra incluido en la instrucción, es decir, a continuación del código de la

Page 5: Microprocesadores

instrucción se añade el operando propiamente dicho. Las instrucciones que

emplean este direccionamiento pueden ser de dos o tres bytes y son

instrucciones de ejecución rápida y sencilla.

2.2.- Direccionamiento Implícito: Las instrucciones que emplean este modo

de direccionamiento tienen un solo byte y es la propia instrucción la que indica

qué registró o dirección de memoria se va a utilizar en la operación.

2.3.- Direccionamiento Absoluto: En este caso las instrucciones incluyen la

dirección de memoria donde se encuentra el dato con el que se va a operar. En

este tipo de direccionamiento pueden darse tres supuestos:

a) La instrucción apunta a un registro que contiene la información deseada

(direccionamiento también llamado de registro).

b) La instrucción contiene la dirección completa en la que se encuentra el dato,

empleando para ello tres bytes.

c) Cuando la instrucción se refiere solo a una parte de la memoria (página), en

este caso el byte más alto lo suministra el contador de programa y el byte más

bajo se expresa a continuación del código de instrucción, por tanto solo se

emplean dos bytes (Este direccionamiento también se llama de página base).

2.4.- Direccionamiento Directo Relativo: La instrucción en este caso contiene

un valor determinado al que podemos llamar V, la dirección total se calcula

sumando a V el valor que esté almacenado en un registro al que haga

referencia la instrucción, el valor de V puede ser tanto positivo como negativo.

2.5.- Direccionamiento Indirecto: La instrucción contiene una dirección a la

que llamaremos D1. El contenido de D1 no es el objeto directo de nuestra

instrucción, sino que contiene otra dirección que llamaremos D2. Esta nueva

dirección D2 es la que contiene el dato que sí es objeto de la instrucción.

Expresados ya los modos de direccionamiento con carácter general, pasamos

ahora a ver los modos de direccionamiento que utiliza el microprocesador 8085

en particular, que son los cuatro siguientes:

2.6.- Direccionamiento Directo Absoluto: La instrucción contiene la dirección

exacta y completa donde se encuentra el dato. Por ejemplo:

LHLD A716H

2.7.- Direccionamiento Por Registro: La instrucción lleva el registro en el que

está el dato que va a ser tratado, como por ejemplo:

MOV A,B

Page 6: Microprocesadores

MOV B,C

2.8.- Direccionamiento Por Registro Indirecto: En la instrucción se especifica

un registro cuyo contenido apunta a una dirección de memoria en la que se

encuentra el dato, por ejemplo:

MOV A,M

M es una referencia simbólica a una dirección apuntada o señalada por el par

de registros HL.

2.9.- Direccionamiento Inmediato: La instrucción contiene el dato con el que

se desea operar, pudiendo ser el dato de uno o dos bytes:

LXI H,A0B7H

ADI 3AH