BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
Microprocesadores
1. Republica Bolivariana de Venezuela
Instituto Universitario Politécnico Santiago Mariño.
Catedra: Electiva III (Microprocesadores).
Microprocesador.
Realizado por:
Yessika Tranchino.
C.I.: 23.768.473
Jackson Lopez.
C.I.: 21.489.552
Mcbo, Mayo 2014.
2. Esquema.
1.- Registros.
1.1.- Registros Internos.
1.2.- Clasificación de los registros:
1.2.1.- Registros de Segmento.
1.2.2.- Registros de Apuntadores de Instrucciones.
1.2.3.- Registros Punteros de Pila.
1.2.4.- Registros de Estado.
1.2.5.- Registro Índice.
1.2.6.- Registro de Bandera.
1.3.- Ventajas de los Registros.
1.4.- Funcionamiento del Registro.
2.- Instrucciones del Microprocesador.
2.1.- Clasificación según su función
2.2.- Tipos
2.3.- Ciclo de Búsqueda.
2.3.1.- Ciclo de Ejecución.
3.- Modos de Direccionamiento
3.1.- Tipos de Direccionamiento.
3. Desarrollo.
1.- Registros.
Los registros del procesador se emplean para controlar instrucciones en
ejecución, manejar direccionamiento de memoria y proporcionar capacidad
aritmética. Los registros son espacios físicos dentro del microprocesador con
capacidad de 4 bits hasta 64 bits dependiendo del microprocesador que se
emplee. Son direccionables por medio de una viñeta, que es una dirección de
memoria. Los registros se pueden dividir en varias clases. Dependiendo de la
arquitectura del procesador podremos tener un número distinto de ellos. En los
micros más simples, existían de forma básica dos tipos de registros, unos de
propósito general, donde se llevaban a cabo todas las operaciones y otros que se
encargan de trabajar con las direcciones de memoria.
En cuanto las tecnologías avanzaron se empezaron ha añadir un mayor
número de ellos, por ejemplo al añadir las instrucciones MMX, AVX y SSE se
amplió el número y tipo para poder trabajar mejor con operaciones más complejas.
1.1.- Registros Internos.
Dentro del microprocesador hay una serie de memorias que, al estar internas,
éste maneja de forma especial. Estas posiciones de memoria interna llamadas
registros, pueden tener una utilidad general o una utilidad específica.
1.2.- Clasificación de los Registros:
1.2.1.- Registros de Segmento: Se utiliza para alinear en un limite
de párrafo o dicho de otra forma codifica la dirección de inicio de cada segmento y
su dirección en un registro de segmento supone cuatro bits 0 a su derecha.
1.2.2.- Registros de Apuntadores de Instrucciones: Se contiene el
desplazamiento de dirección de la siguiente instrucción que se ejecuta. El registro
IP esta asociado con el registro CS (indica la dirección de una instrucción que es
buscada para su ejecución) en el sentido de que el IP indica la instrucción actual
dentro del segmento de código que se esta ejecutando actualmente.
4. 1.2.3.- Registros 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.
1.2.4.- Registros de Estado: Es un registro en el cual cada bit da una
información específica como puede ser que la última operación ha dado resultado
positivo, negativo, ha sido cero. Etc.
1.2.5.- Registro índice: Son utilizados para acceder a posiciones de
memoria de forma relativa.
1.2.6.- Registro de Bandera: Estos sirven parar indicar el estado actual de
la maquina y el resultado del procesamiento, cuando algunas instrucciones piden
comparaciones o cálculos aritméticos cambian el estado de las banderas.
1.3.- Ventajas de los Registros.
La ventaja de estos registros es que al estar dentro del microprocesador, el
acceso de este a su contenido es muy rápido, y siempre mucho mayor que
acceder a datos de la memoria. Aunque en un principio cualquier registro se
puede usar para manejar datos de un programa, cada uno de ellos tiene una
finalidad específica.
Los registros son pequeñas memorias donde tienen que estar almacenados los
datos para poder realizar cálculos con ellos. Las arquitecturas, tanto de Intel como
AMD, han evolucionado hacia sistemas con un mayor número de ellos que les
permite realizar una gran cantidad de operaciones en un tiempo cada vez más
ajustado.
1.4.- Funcionamiento del Registro.
En el nivel más alejado tendríamos a la información que se encuentra en
el disco duro, que es el único elemento de tu PC capaz de almacenar datos
incluso aunque este no tenga corriente, después pasaríamos a la RAM y
finalmente a la memoria cache del procesador. A menor distancia al micro
tenemos una velocidad mayor de acceso.
Este seria el camino que tiene que recorrer un dato o una instrucción para
poder ser procesado por el micro. Pero existe un paso más. Y es que el micro
5. necesita que ese dato pase a una memoria especial que se encuentran en su
interior para realizar las operaciones. Esa memoria es muy rápida y es lo que
conocemos como registros.
2.- Instrucciones del Microprocesador.
Un ciclo de instrucción no necesariamente corresponde a la ejecución de un
número fijo de instrucciones. En algunas ocasiones se necesitan dos ciclos o más
para ejecutar una instrucción. El número de instrucciones completadas es
independiente del número de ciclos usados.
Algunas veces las comparaciones entre computadoras se hacen basándose en
el número de instrucciones por segundo (IPS) en lugar del tiempo de ciclo; ésta
medida depende tanto del número de ciclos por segundo como de la mezcla de
instrucciones.
Fuente: Ciclo de Instrucciones de un Microprocesador.
6. 2.1.- Clasificación según su función:
Instrucciones de transferencia de datos: Estas instrucciones mueven
datos (que se consideran elementos de entrada/salida) desde la memoria
hacia los registros internos del microprocesador, y viceversa. También se
usan para pasar datos de un registro a otro del microprocesador.
Instrucciones de cálculo: Son instrucciones destinadas a ejecutar ciertas
operaciones aritméticas, como por ejemplo sumar, restar, multiplicar o
dividir, o ciertas operaciones lógicas, como por ejemplo AND, OR, así como
desplazamiento y rotación de bits.
Instrucciones de transferencia del control del programa: Permiten
romper la secuencia lineal del programa y saltar a otro punto del mismo.
Pueden equivaler a la instrucción GOTO que traen muchos lenguajes de
programación.
Instrucciones de control: Son instrucciones especiales o de control que
actúan sobre el propio microprocesador. Permiten acceder a diversas
funciones, como por ejemplo activar o desactivar las interrupciones, pasar
órdenes al coprocesador matemático, detener la actividad del
microprocesador hasta que se produzca una interrupción, etc.
2.2.- Tipos.
En lo que se necesitan para ejecutar las instrucciones en código máquina
podemos encontrar dos tipos de microprocesadores:
CISC: Es una computación con una colección de instrucciones compleja.
Las instrucciones son ejecutadas haciendo uso de varios ciclos de reloj.
Las instrucciones son interpretadas por una microprograma a través de
la unidad de control.
RISC: Es una computación con una colección de instrucciones reducida.
Son más rápidos y eficientes aunque los programas ejecutables son más
largos. Cada instrucción es ejecutada en un ciclo de reloj, excepto las de
cargar y guardar.
7. 2.3.- Ciclo de Búsqueda.
Búsqueda de la instrucción.
Lo primero que realiza el microprocesador en un ciclo de instrucción, es buscar
la instrucción en la memoria principal (RAM). El registro apuntador de
instrucciones, tiene almacenada la dirección de la próxima instrucción a ejecutar.
Cuando la instrucción fue hallada, el microprocesador pasa la instrucción de la
memoria principal a través del bus de datos al Registro de Datos de Memoria
(MDR). A continuación, lo registrado allí es colocado en el Registro de Instrucción
Actual (CIR), un circuito que guarda la instrucción temporalmente de manera que
pueda ser decodificada y ejecutado.
Decodificación de la instrucción.
La segunda y última acción comprendida en el ciclo de búsqueda es decodificar
la instrucción. El dato es enviado a una Unidad de Decodificación, que decodifica
la instrucción que se va a ejecutar. Es decir, el decodificador traduce la instrucción
para saber, justamente, qué instrucción es.
2.3.1.- Ciclo de Ejecución.
Una vez que la unidad de decodificación sabe cuál es el significado de la
instrucción leída de memoria, se lo comunica a la Unidad de Ejecución. Esta
unidad será la encargada de consumar la ejecución y para ello activará las
señales necesarias y en un orden determinado. Es decir, es la encargada de dar
las órdenes necesarias a las diversas partes del microprocesador para poder
ejecutar cada una de las instrucciones.
3.- Modos de Direccionamiento
Un modo de direccionamiento especifica la forma de calcular la dirección de
memoria efectiva de un operando mediante el uso de la información contenida en
registros y/o constantes, contenida dentro de una instrucción de la máquina o en
otra parte. En las diferentes arquitecturas de computadores varían mucho en
cuanto al número de modos de direccionamiento que ofrecen desde el hardware.
Eliminar los modos de direccionamiento más complejos podría presentar una serie
de beneficios, aunque podría requerir de instrucciones adicionales, e incluso de
otro registro. Se ha comprobado que el diseño de CPUs segmentadas es mucho
más fácil si los únicos modos de direccionamiento que proporcionan son simples.
8. Tenga en cuenta que no existe una forma generalmente aceptada de nombrar
a los distintos modos de direccionamiento. En particular, los distintos autores y
fabricantes de equipos pueden dar nombres diferentes para el modo de hacer
frente al mismo, o los mismos nombres, a los diferentes modos de
direccionamiento. Además, un modo de direccionamiento que en una determinada
arquitectura se trata como un modo de direccionamiento, puede representar la
funcionalidad que en otra arquitectura está cubierto por dos o más modos de
direccionamiento.
3.1.- Tipos de Direccionamiento
Implícito: En este modo de direccionamiento no es necesario poner
ninguna dirección de forma explícita, ya que en el propio código de
operación se conoce la dirección del (de los) operando(s) al (a los) que se
desea acceder o con el (los) que se quiere operar.
Inmediato: En este modo el operando es especificado en la instrucción
misma. En otras palabras, una instrucción de modo inmediato tiene un
campo de operando en vez de un campo de dirección. El campo del
operando contiene el operando actual que se debe utilizar en conjunto con
la operación especificada en la instrucción. Las instrucciones de modo
inmediato son útiles para inicializar los registros en un valor constante.
Directo: El campo de operando en la instrucción contiene la dirección en
memoria donde se encuentra el operando. En este modo la dirección
efectiva es igual a la parte de dirección de la instrucción. El operando reside
en la memoria y su dirección es dada directamente por el campo de
dirección de la instrucción. En una instrucción de tipo ramificación el campo
de dirección especifica la dirección de la rama actual.
Indirecto: El campo de operando contiene una dirección de memoria, en la
que se encuentra la dirección efectiva del operando.
Absoluto: El campo de operando contiene una dirección en memoria, en la
que se encuentra la instrucción. Y no se cancela.
De registro: Este sirve para especificar operandos que están en registros.
En este modo, los operandos están en registros que residendentro de la
CPU
9. De desplazamiento: Combina el modo directo e indirecto mediante
registros
De pila: Se utiliza cuando el operando está en memoria y en la cabecera de
la pila, Este direccionamiento se basa en las estructuras denominadas Pila
(tipo LIFO), las cuales están marcados por el fondo de la pila y el puntero
de pila, El puntero de pila apunta a la última posición ocupada. Este tipo de
direccionamiento nos aporta flexibilidad pero por el contrario, es mucho más
complejo que otros tipos estudiados más arriba.
Relativo a un registro base: Consiste, al igual que el indirecto a través de
registro, en calcular la dirección efectiva como la suma del contenido del
registro base y un cierto desplazamiento (offset) que siempre será positivo.
Esta técnica permite códigos reentrantes y acceder de forma fácil y rápida a
posiciones cercanas de memoria.
Relativo a un registro índice: Es similar al anterior, excepto que es el
contenido del registro índice el que indica el desplazamiento que se
produce a partir de una dirección de memoria que se pasa también como
argumento a la orden que utiliza este modo de direccionamiento. Aunque
en esencia son dos modos equivalentes.