martes, 21 de octubre de 2014

Procesador

Seguimos explicando las partes de nuestro ordenador. Hoy toca el procesador, o microprocesador.

El procesador es el "cerebro" de nuestro ordenador. En el post http://limpiandopelusas.blogspot.com.es/2014/10/memoria-ram.html proponíamos un símil para entender mejor el proceso de funcionamiento de la memoria RAM, el disco duro y el procesador. El símil consiste en un espacio de trabajo donde un estudiante utiliza libros para trabajar. Mientras que la memoria RAM es el hueco de la mesa donde el estudiante tiene los libros que más utiliza, el procesador es el propio estudiante, que procesa y hace útil la información que necesita de estos libros.



Como unidad de procesamiento, necesita unos pequeños almacenes de información instantánea a nivel de datos. Son los registros los lugares donde el procesador almacena los datos instantáneos con los que realiza las operaciones. Hay registros de varios tipos, cada cual de ellos destinados a unos usos concretos.



Siguiendo la filosofía por la cual se hace necesaria la presencia de la RAM, en este caso se utiliza también un almacén intermedio entre la RAM y el procesador: la memoria caché. Sirve de almacén instantáneo, para reducir tiempos de transmisión entre la RAM y los registros. A su vez, la caché está organizada en varios niveles en escalera. A medida que el nivel esté más cerca del procesador, es de menor tamaño de almacenamiento, pero de mayor velocidad de transmisión.

El procesador toma los datos que necesita de la memoria RAM, y realiza operaciones con ellos. Por paradójico que parezca, es la parte más compleja de todo el ordenador, pero las operaciones que realiza son muy sencillas. Las funciones principales son:

  • Acceso a memoria (RAM): Evidentemente, debe tomar los datos que necesite de la RAM.
  • Operaciones de control: Acciones propias de la gestión de los datos, para controlar su correcto funcionamiento.
  • Operaciones aritméticas: Suma, resta, división y multiplicación.
  • Operaciones lógicas: AND, OR, NOT, NAND, etc.
Todas ellas hacen uso constante de los registros. Pero los registros no son infinitos, son más bien reducidos, por lo que un proceso difícil de gestionar a nivel de programación es la gestión del uso de los registros, para no perder datos y poder obtener total funcionalidad a partir de los registros disponibles.


Registro especial: Contador de Programa, ¿cómo funciona el procesador?

El procesador ejecuta las instrucciones que un programa determinado le ordena. Pero... ¿cómo se leen esas órdenes? Los programas que se ejecutan se almacenan en la memoria, y son datos (líneas y líneas de instrucciones de programación). El procesador debe almacenar la dirección de memoria donde empieza el código que debe leer del programa. ¿Cómo saber por qué línea va la ejecución de un programa? Aquí entra en juego el Contador de Programa. Es un registro que se autoincrementa (se suma 1 unidad a su valor) cada vez que se ejecuta una instrucción del código de programación del programa. De esta manera, en un procesador se controla la ejecución de una sucesión de instrucciones de código.

Por lo tanto, cada instrucción de programación debe indicar al procesador qué datos utilizar (obtenidos de la RAM y la caché, o en caso de que no estén ahí, obtenerlos del disco duro) y qué operaciones hacer con ellos. Generalmente, se sigue el ciclo "Lectura -> Operación -> Escritura modificada". En estos pasos se puede resumir lo que hace una instrucción de programa, y por lo tanto, el funcionamiento del procesador.

No hay comentarios:

Publicar un comentario en la entrada