30 Ago
El Sistema Informático y sus Componentes Fundamentales
Un Sistema Informático (SI) es una técnica que permite el almacenamiento y el procesamiento de información, para lo cual se vale de un conjunto de elementos interrelacionados.
Componentes Esenciales del Sistema Informático
- El Hardware: Cualquier dispositivo electrónico utilizado en el proceso de la información.
- El Software: Formado por cualquier elemento lógico involucrado en el proceso de la información.
- Los Usuarios/Personas: Son las personas que lo utilizan. Sin ellos, el resto de los elementos no tendrían sentido, ya que las personas crean y diseñan el software y el hardware.
¿Qué es un Computador?
Un computador es una máquina electrónica capaz de realizar las siguientes tareas:
- Aceptar información.
- Almacenar la información.
- Procesarla según un conjunto de instrucciones.
- Producir y proporcionar resultados.
Componentes Principales de un Computador
Un computador dispone de tres componentes principales para efectuar las tareas descritas anteriormente, además de un cuarto componente esencial para su interconexión:
- Unidad de E/S (Entrada/Salida): Acepta información y comunica los resultados.
- Procesador: Procesa la información.
- Memoria: Almacena la información y las instrucciones.
- Sistema de Interconexión: Mueve la información entre los tres componentes anteriores, conectándolos entre sí.
Arquitectura y Estructura del Computador
Arquitectura de un Computador
La arquitectura de un computador se refiere al conjunto de elementos del computador que son visibles desde el punto de vista del programador de ensamblador. Esto incluye el juego de instrucciones, los modos de direccionamiento del computador, los tipos y formatos de los operandos, el mapa de memoria y de E/S, o los modelos de ejecución.
Estructura u Organización del Computador
La estructura o organización del computador describe las unidades funcionales del computador y el modo en que están interconectadas. Describe un conjunto de elementos que son transparentes al programador, como los sistemas de interconexión y de control, la interfaz entre el computador y los periféricos, y las tecnologías utilizadas.
El Modelo de Arquitectura de Von Neumann
Introducido por el matemático húngaro John Von Neumann en 1945 (no 1991, asumo un error tipográfico) durante su participación en el proyecto ENIAC, este modelo es utilizado por la mayoría de los ordenadores actuales.
El modelo de Von Neumann representa un ordenador de forma modular o esquemática con los siguientes elementos:
- El Procesador: Dirige el funcionamiento del ordenador y procesa los datos.
- La Memoria Principal: Almacena las instrucciones que realiza el procesador y los datos sobre los que se aplican estas.
- Los Dispositivos de E/S: Comunican al ordenador con su entorno.
- Los Buses: Actúan como canal de comunicación entre el procesador, la memoria y los dispositivos de E/S.
Estos elementos definen la estructura lógica del ordenador.
Desde el punto de vista físico, existe un elemento fundamental que actúa como soporte e interconecta el resto de los dispositivos que conforman un ordenador: la placa base (en inglés, Motherboard o Mainboard). Está formada por un circuito impreso, una serie de conectores de diferentes tipos a los que se unen distintos elementos, un panel para conectar dispositivos externos y algunos circuitos integrados con funciones específicas.
La Arquitectura de Von Neumann se caracteriza porque el programa que ejecuta el SI está almacenado internamente (es información) en el propio sistema.
Elementos Clave de la Arquitectura de Von Neumann
Unidad Central de Procesamiento (CPU)
La Unidad Central de Procesamiento (CPU) está formada por varios elementos con los que procesa instrucciones que permiten el funcionamiento del ordenador.
La CPU acepta la entrada de datos, procesa la información y la envía a cualquier componente que se encargue de ejecutar la acción. Se basa en operaciones programadas y diseñadas para la transmisión y utilización informática, cuyos pasos básicos son recolectar información, decodificarla en partes menores en las cuales pueda interpretar esa descodificación y ejecutar la(s) instrucción(es). En este proceso, diferentes partes de la CPU actúan de forma conjunta.
El Microprocesador
Un microprocesador es una CPU implementada en un circuito integrado. Estos han ido reemplazando a las CPUs discretas poco a poco hasta el presente.
Los procesadores solo pueden interpretar información escrita de forma binaria, es decir, en lenguaje máquina (ej. instrucciones).
Elementos que Forman la CPU
Unidad Aritmético Lógica (ALU)
La ALU (Unidad Aritmético Lógica) realiza operaciones aritméticas (suma, resta, multiplicar, dividir) y lógicas (AND, OR, desplazamientos, condicionales SI, NO) con los datos. Los datos con los que opera, así como los resultados de la operación, se encuentran en registros de la CPU.
Para poder realizarlo, necesita de los Registros de Operando (para los datos de entrada), el Registro de Resultado (para los datos de salida) y el Registro de Estado (para el estado de la operación). La comunicación entre ellos se realiza mediante los diferentes buses.
Tipos de Operaciones Posibles con la ALU
- Diádicas: Aquellas operaciones que utilizan dos o más cifras. Ej. sumas aritméticas.
- Monádicas: Aquellas operaciones que solo utilizan un operando o cifra. Ej. cambio de signo.
Operaciones/Instrucciones Específicas Posibles con la ALU (Monádicas y Diádicas)
- Suma aritmética
- Resta aritmética
- Operaciones lógicas (comparación, complementación)
- Desplazamiento o rotación
- No operar (transferencia)
- Cambio de signo
Unidad de Control (UC)
Este elemento de la CPU es indispensable. Se encarga de sincronizar las operaciones y dar órdenes precisas al resto de dispositivos.
Elementos de la Unidad de Control
- Contador de Programa (CP/PC): Contiene la dirección de memoria donde se encuentra la instrucción a leer.
- Registro de Instrucción (RI): Memoriza temporalmente la siguiente instrucción a realizar.
- Decodificador: Interpreta la instrucción y la convierte de lenguaje de alto nivel a lenguaje máquina.
- Reloj: Indica el momento en el que se debe ejecutar cada paso de la ejecución de una instrucción, marcando los tiempos.
- Secuenciador: Activa en el orden adecuado las diferentes unidades funcionales para ejecutar la instrucción.
Tipos de Unidades de Control
Existen dos tipos principales de unidades de control:
Unidad de Control Cableada
- La lógica de las operaciones se implementa mediante hardware, lo que las hace más rápidas.
- Genera las señales de control necesarias para el procesador utilizando circuitos lógicos.
- Es más rápida que la microprogramada, ya que las señales requeridas se generan directamente con hardware (cables/circuitos).
- Es difícil de modificar, ya que las señales de control están cableadas.
- Más costosa, ya que todo debe realizarse en términos de puertas lógicas.
- No puede manejar instrucciones complejas, ya que el diseño del circuito se vuelve complejo.
- Solo se utiliza en un número limitado de instrucciones debido a la implementación de hardware.
- Se utiliza en computadoras con conjunto de instrucciones reducido (RISC).
Unidad de Control Microprogramada
- Es una pequeña CPU en miniatura que puede programarse para realizar diferentes tareas. Son más lentas.
- Genera las señales de control con la ayuda de microinstrucciones almacenadas en la memoria de control.
- Es más lenta que la cableada, ya que utiliza microinstrucciones para generar señales.
- Fácil de modificar, ya que la modificación se realiza solo a nivel de instrucción.
- Menos costosa que el control cableado, ya que solo se utilizan microinstrucciones para generar señales de control.
- Puede manejar instrucciones complejas.
- Se pueden generar señales de control para muchas instrucciones.
- Se utiliza en computadoras con un conjunto de instrucciones complejas (CISC).
Buses del Sistema
Los Buses del Sistema son vías que transportan la información de un componente a otro de la arquitectura de Von Neumann. El número de líneas que tiene el bus determina el número de bits que se pueden transportar en paralelo. Los buses mueven información o transportan datos por cada ciclo de reloj; puede haber buses que realicen dos operaciones (transporte de datos) en cada ciclo de reloj.
Tipos de Buses Principales
- Bus de Datos: Transporta datos, como las instrucciones para ejecutar un programa. Pueden haber buses que transportan más o menos datos, según si son de 8, 16, 32 o 64 bits.
- Bus de Direcciones: Indica el origen y/o destino de los datos, pues señala la ubicación en la memoria principal a la que se accede para recoger el dato y poder ejecutar el programa o almacenar el dato en una ubicación.
- Bus de Control: Proporciona señales para coordinar las diferentes tareas que se realizan en el SI.
La Memoria Principal
La memoria principal tiene por objetivo guardar información que es accesible para la CPU. La CPU puede leer y/o escribir datos en las diferentes posiciones de memoria que componen la memoria principal. La memoria principal tiene menor capacidad que la memoria secundaria (que virtualmente es ilimitada), pero es mucho más rápida. Actualmente, la memoria principal se implementa mediante circuitos integrados. La memoria principal de los SI está formada por dos áreas diferenciadas:
Tipos de Memoria Principal
- Memoria RAM (Random Access Memory): Memoria de Acceso Aleatorio (no tiene por qué ser utilizada de manera secuencial). Permite tanto la lectura como la escritura de la información. Es un medio de almacenamiento volátil, de manera que pierde su contenido al cesar la fuente de alimentación.
- Memoria ROM (Read Only Memory): Memoria de Acceso Aleatorio que solo permite la lectura de los datos que almacena. Es un medio de almacenamiento persistente, pues no pierde su contenido cuando cesa la alimentación.
Funcionamiento del Computador: El Ciclo de Instrucción
Para que un programa pueda ser ejecutado, este ha de estar almacenado en la memoria principal. La Unidad de Control (UC) tomará las instrucciones una a una y las ejecutará secuencialmente para completar la ejecución.
Se denomina ciclo de instrucción al conjunto de pasos que se llevan a cabo para la ejecución de una instrucción de programa. Un ciclo de instrucción es el proceso por el que pasa una instrucción para ser ejecutada:
- Fase de Búsqueda (Fetch): El Contador de Programa (CP/PC) marca la ubicación de la memoria principal de la que extrae la información mediante el bus de datos y direcciones. Transfiere la instrucción a ejecutar desde la memoria principal hasta el Registro de Instrucción (RI) de la UC.
- Fase de Decodificación (Decode): Cuando la instrucción se encuentra en lenguaje de alto nivel, deberá ser convertida a un lenguaje entendible por la máquina (binario/lenguaje máquina) gracias al Decodificador.
- Fase de Ejecución (Execute): Se realizan las acciones propias de la instrucción.
- Fase de Escritura de Resultado (Write-back): Se devuelve a la memoria principal el resultado de la ejecución de la instrucción.
- Fase de Preparación para la Siguiente Instrucción: Se incrementa en 1 el CP/PC para que se realice la siguiente instrucción.
Registros de la CPU
Los registros de la CPU proporcionan un espacio de almacenamiento temporal para los datos con los que trabaja la CPU. Los registros se deben cargar con información que proviene de la memoria principal antes de comenzar a operar. Cuando hay que operar con nuevos datos, se libera la información o datos antiguos de los registros, escribiéndose en la memoria principal.
Operar con datos en el Banco de Registros es mucho más rápido que operar con datos en la memoria principal. Normalmente se distingue entre:
- Registro de Datos: Guardan la información con la que se trabaja.
- Registro de Direcciones: Guardan direcciones de memoria (en las que pueden haber datos).
- Registro de Control: Controlan el estado de la CPU (flags: zero, overflow, positivo/negativo).
La Instrucción
Una instrucción es un conjunto de símbolos que el ordenador es capaz de interpretar con el objetivo de realizar las acciones que dichos símbolos indican.
Las instrucciones en lenguaje máquina son muy elementales. Podemos clasificarlas según la acción que ordenan:
- Instrucción de Transferencia de Memoria
- Instrucción de E/S
- Instrucción de Cálculo
- Instrucción de Ruptura de Secuencia: Evitan que se lea todo el código, saltándose una parte (ej. condicionales o un JUMP).
- Instrucción de Control de CPU
Formatos de Instrucción
Cuando hablamos de formatos de instrucción, nos referimos a cómo se representan las instrucciones. Se componen de:
- Código de Instrucción
- Operandos (suelen ser ninguno, uno o varios)
- Dirección del Resultado (a veces implícito y se guarda en la posición del primer operando)
- Dirección de la Siguiente Instrucción (Ej. Bifurcación)
- Tipo de Representación de Operando
Deja un comentario