sábado, 10 de octubre de 2015


Arquitectura de computadoras

Arquitectura de computadora
La arquitectura de computadoras es el diseño conceptual y la estructura operacional fundamental de un sistema de computadoras. Es decir, es un modelo y una descripción funcional de los requerimientos y las implementaciones de diseño para varias partes de una computadora, con especial interés en la forma en que la unidad central de proceso (CPU) trabaja internamente y accede a las direcciones de memoria.
También suele definirse como la forma de seleccionar e interconectar componentes de hardware, para crear computadoras según los requerimientos de funcionalidad, rendimiento y costo.
La computadora recibe y envía la información a través de los periféricos, por medio de los canales. La CPU es la encargada de procesar la información que le llega a la computadora. El intercambio de información se tiene que hacer con los periféricos y la CPU. Puede considerarse que todas aquellas unidades de un sistema, exceptuando la CPU, se denomina periférico, por lo que la computadora tiene dos partes bien definidas, que son:
  1. la CPU (encargada de ejecutar programas y que también se considera compuesta por la memoria principal, la unidad aritmético lógica y la unidad de control),
  2. los periféricos (que pueden ser de entrada, salida, entrada/salida, almacenamiento y comunicaciones).


Almacenamiento de operandos en la CPU[editar]

La diferencia básica está en el almacenamiento interno de la CPU. Las principales alternativas son:
Pero antes hay que tomar en cuenta que la informaciones procesadas son de suma importancia.
Características
  • En una arquitectura de acumulador, un operando está implícitamente en el acumulador siempre leyendo e ingresando datos (por ejemplo, una calculadora estándar).
  • En la arquitectura de pila no es necesario nombrar a los operandos ya que estos se encuentran en el tope de la pila (por ejemplo, calculadora de pila HP).
  • La arquitectura de registros tiene sólo operandos explícitos (es aquel que se nombra) en registros o memoria.

Ventajas de las arquitecturas

  • Pila:
    • Modelo sencillo para evaluación de expresiones (notación polaca inversa).
    • Instrucciones cortas pueden dar una buena densidad de código.
  • Acumulador:
    • Instrucciones cortas.
    • Minimiza estados internos de la máquina (unidad de control sencilla).
  • Registro:
    • Modelo más general para el código de instrucciones parecidas.
    • Automatiza generación de código y la reutilización de operandos.
    • Reduce el tráfico a memoria.
    • Una computadora tiene 32 registros, como estándar.
    • El acceso a los datos es más rápido y veloz.

Desventajas de las arquitecturas

  • Pila:
    • A una pila no se puede acceder aleatoriamente.
    • Esta limitación hace difícil generar código eficiente.
    • También dificulta una implementación eficiente, ya que la pila llega a ser un cuello de botella es decir que existe dificultad para la transferencia de datos en su velocidad mk.
  • Acumulador:
    • Como el acumulador es solamente almacenamiento temporal, el tráfico de memoria es el más alto en esta aproximación.
  • Registro:
    • Todos los operadores deben ser nombrados, conduciendo a instrucciones más largas.