1. República Bolivariana De Venezuela
Ministerio del Poder Popular para la educación
I.U.P “Santiago Mariño”
Barcelona – Anzoátegui
Organización del computador
Docente:
Ing. DIÓGENES RODRÍGUEZ
Alumno:
Gamardo, Rosanny
C.I 28.499.704
Barcelona, Octubre de 2021
2. La expresión "unidad central de proceso" es, en términos generales, una descripción de una
cierta clase de máquinas de lógica que pueden ejecutar complejos programas de
computadora. Esta amplia definición puede fácilmente ser aplicada a muchos de los
primeros computadores que existieron mucho antes que el término "CPU" estuviera en
amplio uso.
La forma, el diseño y la implementación de los CPU ha cambiado drásticamente desde los
primeros ejemplos, pero su operación fundamental ha permanecido bastante similar.
Los primeros CPU fueron diseñados a la medida como parte de una computadora más
grande, generalmente una computadora única en su especie. Sin embargo, este costoso
método de diseñar los CPU a la medida, para una aplicación particular, ha desaparecido en
gran parte y se ha sustituido por el desarrollo de clases de procesadores baratos y
estandarizados adaptados para uno o muchos propósitos.
Los microprocesadores modernos aparecen en todo, desde automóviles, televisores,
neveras, calculadoras, aviones, hasta teléfonos móviles o celulares, juguetes, entre otros.
3. La unidad de control es una pieza indispensable que realiza la
siguiente lista de trabajos de manera continua y transparente:
• Coordina el movimiento y el orden de los datos que se
mueven dentro y fuera del procesador, así entre las
diferentes subunidades que forman parte del mismo.
• Interpreta las instrucciones.
• Controla las diferentes ALUs y unidades de ejecución
del procesador.
• No solo se encarga de captar y descodificar las
instrucciones, sino también de escribir los resultados
en los registros, caches o en la dirección
correspondiente de la RAM.
La unidad de control es por tanto el verdadero cerebro en la
sombra dentro de la CPU, el que se encarga de gestionar que
todas las piezas de la CPU reciban los datos correctos y
ejecuten las instrucciones correctas en cada momento.
4. Mecanismo que permite conocer la ubicación de un dato o instrucción En informática, los modos de
direccionamiento son las diferentes maneras de especificar un operando dentro de una instrucción
en lenguaje ensamblador.
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.
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.
5. Direccionamiento implícito
En este modo, llamado también inherente, el operando se especifica en la
misma definición de la instrucción. El modo implícito se usa para hacer
referencia a operandos de dos tipos:
- Registros: En el caso de que el código de operación se refiera en
particular a un registro.
- Operandos en la pila: En el caso de que la operación se realice siempre
sobre el dato situado en la cima de pila.
El primer caso es típico de las organizaciones de un solo acumulador.
Generalmente en un ordenador de este tipo todas las instrucciones que
actúan sobre el acumulador utilizan direccionamiento implícito.
En el segundo caso están la mayoría de las instrucciones de los
ordenadores con organización de pila. Estas operaciones llevan implícitos
los operandos que son los elementos de la cima de pila. Esto se debe a que
en este tipo de máquinas la mayoría de las operaciones no tienen campos
de dirección. También están en este caso las instrucciones PUSH y POP de
la mayoría de los ordenadores cuyo operando implícito también es, como
en el caso anterior, la cima de pila.
6. Direccionamiento inmediato (o literal)
En este modo es el operando el que figura en la
instrucción no su dirección. En otras palabras el
campo de operando contiene él mismo, sin
transformación alguna, la información sobre la que
hay que operar. Este modo es útil para inicializar
registros o palabras de memoria con un valor
constante.
Bibliografía: Bastida, J.: Introducción a la
Arquitectura de Computadores. Secretariado de
Publicaciones de la Universidad de Valladolid,
1995
Direccionamiento directo (o absoluto)
Este es el modo de direccionamiento más sencillo. El campo de
dirección no necesita transformación alguna para dar la dirección
efectiva, es decir la función que transforma el campo de operando
en la dirección efectiva es la identidad. Esto significa que el campo
de operando es ya la dirección efectiva.
Este direccionamiento sólo se usa en ordenadores pequeños en
que el programa siempre se sitúa en la misma zona de memoria ya
que dificulta la relocalización de los programas, es decir que el
código de los programas no dependa de su situación en memoria.
Ordinariamente este modo sólo se usa para acceder a direcciones
del sistema que normalmente se refieren a operaciones de entrada
y salida ya que estas direcciones no dependen del programa.
7. Direccionamiento directo por registro
Se mencionó anteriormente que el campo de dirección de una
instrucción puede especificar una palabra de memoria o un registro M
procesador. Cuando se da este último caso se dice que el operando
está especificado con direccionamiento directo por registro, en tal caso,
el operando reside en uno de los registros del procesador que es
seleccionado por un campo de registro de k bits en la instrucción. Un
campo de k bits puede especificar uno de 2k registros. Este modo es
típico de los ordenadores con organización de registros de uso general.
Las ventajas de este modo son:
- El acceso a los registros es muy rápido, por tanto el direccionamiento
por registro debe usarse en las variables que se usen con más
frecuencia para evitar accesos a memoria que son más lentos.
- El número de bits necesarios para especificar un registro es mucho
más pequeño que el necesario para especificar una dirección de
memoria, esto es debido a que el número de registros del procesador
es muy pequeño comparado con el número de direcciones de memoria.
Sin embargo, hay que tener en cuenta que en los ordenadores
modernos el número de registros ha aumentado considerablemente.
8. Direccionamiento indirecto
En este modo el campo de operando de la
instrucción indica la localización de la dirección
efectiva del operando.
El modo de direccionamiento indirecto puede
adquirir diferentes formas según cuál sea el lugar
donde se encuentre la dirección del operando. En
general, todos los modos de direccionamiento
tienen su versión indirecta que añade un eslabón
más a la cadena del direccionamiento. Por
ejemplo existe el direccionamiento indirecto por
registro, en el que el registro especificado
contiene la dirección del operando, no el operando
mismo.
Este direccionamiento es útil cuando se trabaja
con punteros ya que los punteros son variables
que contienen las direcciones de los operandos,
no los operandos mismos
9. La función principal de un procesador es ejecutar instrucciones y la organización que tiene viene
condicionada por las tareas que debe realizar y por cómo debe hacerlo.
Los procesadores están diseñados y operan según una señal de sincronización. Esta señal, conocida
como señal de reloj, es una señal en forma de onda cuadrada periódica con una determinada
frecuencia. Todas las operaciones hechas por el procesador las gobierna esta señal de reloj: un ciclo
de reloj determina la unidad básica de tiempo, es decir, la duración mínima de una operación del
procesador.
Para ejecutar una instrucción, son necesarios uno o más ciclos de reloj, dependiendo del tipo de
instrucción y de los operandos que tenga.
Las prestaciones del procesador no las determina solo la frecuencia de reloj, sino otras
características del procesador, especialmente del diseño del juego de instrucciones y la capacidad
que tiene para ejecutar simultáneamente múltiples instrucciones.
10. Para ejecutar las instrucciones, todo procesador dispone de tres componentes principales:
1) Un conjunto de registros: espacio de almacenamiento temporal de datos e instrucciones dentro del procesador.
2) Unidad aritmética y lógica o ALU (1) : circuito que hace un conjunto de operaciones aritméticas y lógicas con los
datos almacenados dentro del procesador.
3) Unidad de control: circuito que controla el funcionamiento de todos los componentes del procesador. Controla el
movimiento de datos e instrucciones dentro y fuera del procesador y también las operaciones de la ALU.
La organización básica de los elementos que componen un procesador y el flujo de información entre los diferentes
elementos se ve en el esquema siguiente:
11. El término procesador actualmente se puede entender como microprocesador porque todas las unidades
funcionales que forman el procesador se encuentran dentro de un chip, pero hay que tener presente que, por
el aumento de la capacidad del nivel de integración, dentro de los microprocesadores se pueden encontrar
otras unidades funcionales del computador. Por ejemplo:
Unidades de ejecución SIMD: unidades especializadas en la ejecución de instrucciones SIMD (single
instruction, multiple data), instrucciones que trabajan con estructuras de datos vectoriales, como por ejemplo
instrucciones multimedia.
Memoria caché: prácticamente todos los procesadores modernos incorporan dentro del propio chip del
procesador algunos niveles de memoria caché.
Unidad de gestión de memoria o memory management unit (MMU): gestiona el espacio de direcciones
virtuales, traduciendo las direcciones de memoria virtual a direcciones de memoria física en tiempo de
ejecución. Esta traducción permite proteger el espacio de direcciones de un programa del espacio de
direcciones de otros programas y también permite separar el espacio de memoria del sistema operativo del
espacio de memoria de los programas de usuario.
Unidad de punto flotante o floating point unit (FPU): unidad especializada en hacer operaciones en punto
flotante; puede funcionar de manera autónoma, ya que dispone de un conjunto de registros propio.
12. El ciclo de ejecución es la secuencia de operaciones que se hace para ejecutar cada una de las
instrucciones. Lo dividimos en cuatro fases principales:
1) Lectura de la instrucción.
2) Lectura de los operandos fuente.
3) Ejecución de la instrucción y almacenamiento del operando de destino.
4) Comprobación de interrupciones.
Orden de operaciones
Las fases principales del ciclo de ejecución son comunes a la mayoría de los computadores
actuales y las diferencias principales se encuentran en el orden en el que se realizan algunas de las
operaciones de cada fase o en el que se realizan algunas de las operaciones en otras fases.
En cada fase se incluyen una o varias operaciones que hay que hacer. Para llevar a cabo estas
operaciones, nombradas micro operaciones, es necesaria una compleja gestión de las señales de
control y de la disponibilidad de los diferentes elementos del procesador, tarea realizada por la
unidad de control.
Veamos las operaciones principales que se realizan habitualmente en cada una de las cinco fases
del ciclo de ejecución de las instrucciones:
13. Fase 1. Lectura de la instrucción
Las operaciones realizadas en esta fase son las siguientes:
• Leer la instrucción. Cuando leemos la instrucción, el registro contador del programa (PC)
nos indica la dirección de memoria donde está la instrucción que hemos de leer. Si el
tamaño de la instrucción es superior a la palabra de la memoria, hay que hacer tantos
accesos a la memoria como sean necesarios para leerla completamente y cargar toda esta
información en el registro de instrucción (IR).
• Descodificar la instrucción. Se identifican las diferentes partes de la instrucción para
determinar qué operaciones hay que hacer en cada fase del ciclo de ejecución. Esta tarea
la realiza la unidad de control del procesador leyendo la información que hemos cargado
en el registro de instrucción (IR).
• Actualizar el contador del programa. El contador del programa se actualiza según el
tamaño de la instrucción, es decir, según el número de accesos a la memoria que hemos
hecho para leer la instrucción.
Las operaciones de esta fase son comunes a los diferentes tipos de instrucciones que
encontramos en el juego de instrucciones.
14. Fase 2. Lectura de los operandos fuente.
Esta fase se debe repetir para todos los operandos fuente que tenga
la instrucción.
Actualización del PC
La actualización del contador del programa es una operación que se
puede encontrar en otras fases de la ejecución de la instrucción.
Las operaciones que hay que realizar en esta fase dependen del
modo de direccionamiento que tengan los operandos: para los más
simples, como el inmediato o el directo a registro, no hay que hacer
ninguna operación; para los indirectos o los relativos, hay que hacer
cálculos y accesos a memoria. Si el operando fuente es implícito,
vamos a buscar el dato en el lugar predeterminado por aquella
instrucción.
Es fácil darse cuenta de que dar mucha flexibilidad a los modos de
direccionamiento que podemos utilizar en cada instrucción puede
afectar mucho al tiempo de ejecución de una instrucción.
Por ejemplo, si efectuamos un ADD R3,3 no hay que hacer ningún
cálculo ni ningún acceso a memoria para obtener los operandos; en
cambio, si efectuamos un ADD [R1], [R2+16], hay que hacer una
suma y dos accesos a memoria.
15. Fase 3. Ejecución de la instrucción y
almacenamiento del operando de destino
(resultado)
Las operaciones que hay que realizar en esta fase dependen
del código de operación de la instrucción y del modo de
direccionamiento que tenga el operando destino.
Ejecución de la instrucción
Las operaciones que se llevan a cabo son diferentes para
cada código de operación. Durante la ejecución, además de
obtener el resultado de la ejecución de la instrucción, se
pueden modificar los bits de resultado de la palabra de estado
del procesador.
Almacenamiento del operando de destino (resultado)
La función básica es recoger el resultado obtenido durante la
ejecución y guardarlo en el lugar indicado por el operando, a
menos que el operando sea implícito, en cuyo caso se guarda
en el lugar predeterminado por aquella instrucción. El
operando de destino puede ser uno de los operandos fuente;
de esta manera, no hay que repetir los cálculos para obtener
la dirección del operando.
16. Fase 4. Comprobación de interrupciones
Los modos de direccionamiento se explican en el apartado 2 del módulo "Juego de instrucciones".
Las interrupciones son el mecanismo mediante el cual un dispositivo externo al procesador puede interrumpir
el programa que está ejecutando el procesador con el fin de ejecutar otro programa (una rutina de servicio a la
interrupción o RSI) para dar servicio al dispositivo que ha producido la interrupción.
La petición de interrupción se efectúa activando alguna de las líneas de petición de las que dispone el
procesador.
En esta fase se verifica si se ha activado alguna línea de petición de interrupción del procesador en el
transcurso de la ejecución de la instrucción. Si no se ha activado ninguna, continuamos el proceso
normalmente; es decir, se acaba la ejecución de la instrucción en curso y se empieza la ejecución de la
instrucción siguiente. En caso contrario, hay que transferir el control del procesador a la rutina de servicio de
interrupción que debe atender esta interrupción y hasta que no se acabe no podemos continuar la ejecución de
la instrucción en curso.
17. En informática, un opcode (operation code) o código de operación, es la porción de una instrucción de lenguaje
de máquina que especifica la operación a ser realizada. Su especificación y formato serán determinados por la
arquitectura del conjunto de instrucciones (ISA) del componente de hardware de computador - normalmente un
CPU, pero posiblemente una unidad más especializada. Una instrucción completa de lenguaje de máquina
contiene un opcode y, opcionalmente, la especificación de uno o más operandos - sobre los que la operación
debe actuar. Algunas operaciones tienen operandos implícitos, o de hecho ninguno. Algunas ISAs tiene
instrucciones con campos definidos para los opcodes y operandos, mientras que otras (ej. la arquitectura Intel
x86) tienen una estructura más complicada y de propósito específico. Los operandos sobre los cuales los
opcodes aplican pueden, dependiendo de la arquitectura del CPU, consistir de. registros, valores en memoria,
valores almacenados en la pila, puertos de I/O, bus, etc. Las operaciones que un opcode puede especificar
pueden incluir aritmética, copia de datos, operaciones lógicas, y control del programa.
18. El código de barras consiste en un sistema de codificación creados atreves de seres de líneas y espacios
paralelos de distinto grosor. Generalmente se utiliza como sistema de control ya que facilita la actividad
comercial del fabricante y del distribuidor, por lo que no ofrece información al consumidor, si no datos de
operaciones aplicados a identificar productos.
Es un dispositivo de entrada que reconoce caracteres mecanografiados o impresos y códigos de barras, y
los convierte en sus correspondientes códigos digitales. Muy conocidos por nosotros en los grandes
supermercados, los cuales interpretan información codificada mediante un sistema de barras.
19. Con el presente trabajo arribamos a las siguientes conclusiones:
Conocer en detalles todas las operaciones que son capaces de realizar las CPU.
Nos permite facilitar para la realización de nuestro trabajo y estudio un una investigación o escribir
un texto realizar un análisis estadístico, entre otros, y saber y observar la operación
fundamental de la mayoría de los CPU, que posibilita ejecutar una secuencia de instrucciones
almacenadas llamadas "programa".
Los programas son representados por una serie de números que se mantienen en una memoria del
computador.