Вы находитесь на странице: 1из 8

ARQUITECTURA DE COMPUTADORAS

La arquitectura de ordenadores es el diseo conceptual y la estructura operacional fundamental


de un sistema de computadoras.1 Es decir, es un modelo y una descripcin funcional de los
requerimientos y las implementaciones de diseo para varias partes de una computadora, con
especial inters en la forma en que la unidad central de proceso (CPU) trabaja internamente y
accede a las direcciones de memoria.

Tambin suele definirse como la forma de interconectar componentes de hardware, para crear
computadoras segn los requerimientos de funcionalidad, rendimiento y costo.

La computadora recibe y enva la informacin a travs de los perifricos, por medio de los
canales. La CPU es la encargada de procesar la informacin que le llega a la computadora. El
intercambio de informacin se tiene que hacer con los perifricos y la CPU. Puede considerarse
que todas aquellas unidades de un sistema, exceptuando la CPU, se denomina perifrico, por lo
que la computadora tiene dos partes bien definidas, que son:

1. La CPU (encargada de ejecutar programas y que tambin se considera compuesta por la


memoria principal, la unidad aritmtico lgica y la unidad de control),
2. Los perifricos (que pueden ser de entrada, salida, entrada/salida, almacenamiento y
comunicaciones).

INTRODUCCIN
La implantacin de instrucciones es similar al uso de una serie de desmontaje en una fbrica de
manufacturacin. En las cadenas de montaje, el producto pasa a travs de muchas etapas de
produccin antes de tener el producto desarmado. Cada etapa o segmento de la cadena est
especializada en un rea especfica de la lnea de produccin y lleva a cabo siempre la misma
actividad. Esta tecnologa es aplicada en el diseo de procesadores eficientes.

A estos procesadores se les conoce como pipeline processors. Estos estn compuestos por una
lista de segmentos lineales y secuenciales en donde cada segmento lleva a cabo una tarea o un
grupo de tareas computacionales. Los datos que provienen del exterior se introducen en el
sistema para ser procesados. La computadora realiza operaciones con los datos que tiene
almacenados en memoria, produce nuevos datos o informacin para uso externo.

Las arquitecturas y los conjuntos de instrucciones se pueden clasificar considerando los


siguientes aspectos:

Almacenamiento de operandos en la CPU: dnde se ubican los operadores aparte de la


substractora informativa (SI).
Cantidad de operandos explcitos por instruccin: cuntos operandos se expresan en
forma explcita en una instruccin tpica. Normalmente son 0, 1, 2 y 3.
Posicin del operando: cualquier operando puede estar en memoria, o deben estar
algunos o todos en los registros internos de la CPU?. Cmo se especifica la direccin de
memoria (modos de direccionamiento disponibles).
Operaciones: qu operaciones estn disponibles en el conjunto de instrucciones.
Tipo y tamao de operandos y cmo se especifican.
PUERTAS LGICAS
Son las encargadas de procesar la lgica de las instrucciones del sistema. Existen siete tipos
bsicos diferentes:

NOT: es la negacin de la entrada. Funciona con una sola entrada y una sola salida.
AND: es la multiplicacin binaria de dos entradas y da una sola salida.
OR: es la suma binaria de dos entradas y da como salida la suma propia o el bit carry de
ser necesario.
XOR: es la suma binaria de dos entradas y da el resultado como salida, sin incluir el bit
carry.
NAND: es la negacin de AND. Da una nica salida.
NOR: es la negacin de OR. Da una nica salida.
XNOR: es la negacin de XOR. Da una nica salida.

ALMACENAMIENTO DE OPERANDOS EN LA CPU


La diferencia bsica est en el almacenamiento interno de la CPU. Las principales alternativas
son:

Acumulador.
Conjunto de registros.
Memoria.

Pero antes hay que tomar en cuenta que la informaciones procesadas son de suma importancia.

Caractersticas
En una arquitectura de acumulador, un operando est implcitamente en el acumulador siempre
leyendo e ingresando datos (por ejemplo, una calculadora estndar).

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 slo operandos explcitos (es aquel que se nombra) en
registros o memoria.

Ventajas de las arquitecturas


Pila:
o Modelo sencillo para evaluacin de expresiones (notacin polaca inversa).
o Instrucciones cortas pueden dar una buena densidad de cdigo.
Acumulador:
o Instrucciones cortas.
o Minimiza estados internos de la mquina (unidad de control sencilla).
Registro:
o Modelo ms general para el cdigo de instrucciones parecidas.
o Automatiza generacin de cdigo y la reutilizacin de operandos.
o Reduce el trfico a memoria.
o Una computadora tiene 32 registros, como estndar.
o El acceso a los datos es ms rpido y veloz.

Desventajas de las arquitecturas


Pila:
o A una pila no se puede acceder aleatoriamente.
o Esta limitacin hace difcil generar cdigo eficiente.
o Tambin dificulta una implementacin 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:
o Como el acumulador es solamente almacenamiento temporal, el trfico de
memoria es el ms alto en esta aproximacin.
Registro:
o Todos los operadores deben ser nombrados, conduciendo a instrucciones ms
largas.

LENGUAJE
DE BAJO NIVEL:
Se encuentran totalmente vinculados a la estructura del computador.

Estn diseados para sacar el mximo partido de las caractersticas fsicas del computador.

Caractersticas:
Dependencia absoluta de la arquitectura del computador.
Imposibilidad de transportar programas entre distintas mquinas, salvo quesean de la
misma familia o compatibles.
Instrucciones poco potentes.
Programas muy largos.
Cdigos de operacin, datos y referencias en binario.

Tipos:
Lenguaje mquina.
o Cdigos de operacin, datos y referencias en binario.
o Directamente interpretable y ejecutable por la circuitera del computador.
Lenguaje ensamblador.

ENSAMBLADOR
El lenguaje ensamblador (o lenguaje de ensamble, assembly language) es la representacin
simblica de la codificacin binaria de un computador.
Cdigos de operacin representados mediante cdigos nemotcnicos.
Datos y referencias codificadas mediante nombres simblicos (smbolos o etiquetas).

Existe una correspondencia biunvoca entre las instrucciones de mquina y las instrucciones de
un lenguaje ensamblador.

Cada instruccin ensamblador es una codificacin simblica de una instruccin de


mquina.
Excepcin: ensambladores que proporcionan una mquina virtual con pseudo-
instrucciones.

El lenguaje ensamblador debe ser traducido a lenguaje mquina para poder ser interpretado y
ejecutado directamente por el computador.

LENGUAJE DE ALTO NIVEL Y DE BAJO NIVEL


La circuitera del computador tan solo comprende los programas escritos en lenguaje mquina.

Los programas escritos en lenguajes simblicos deben ser traducidos a lenguaje mquina antes
de ser ejecutados.

Compilador (compiler): traductor de lenguaje de alto nivel a lenguaje ensamblador.


Hoy da los compiladores pueden traducir los programas directamente a lenguaje
mquina.
Ensamblador (assembler): traductor de lenguaje ensamblador a lenguaje mquina.
Montador (linker): crea el cdigo mquina ejecutable final.
Cargador (loader): carga el cdigo ejecutable en memoria y lo prepara para su ejecucin.

METODOS DE DIRECCIONAMIENTO
Se les llama modos de direccionamiento a las distintas formas de combinar los operandos segn
el acceso que se hace a memoria.

Dicho de otra manera, un modo de direccionamiento ser una forma de parmetro para las
instrucciones.

Una instruccin que lleve un parmetro, por lo tanto, usar un modo de direccionamiento, que
depender de cmo direccionar (accesar) al parmetro; una instruccin de dos parmetros,
combinar dos modos de direccionamiento.
Modo indirecto
Se usan los registros SI, DI como apuntadores

El operando indica una localidad de memoria, cuya direccin (slo la parte desplazamiento) est
en SI o DI.

Es ms lento que otros modos, pues tiene que calcula la localidad

Ejemplos:

MOV AL, [SI]

MOV BL, ES:[SI] ; Aqu se dice que se usa un segment override, donde se indica que en vez de
usar el segmento de datos por defecto, se use en su lugar como referencia el segmento extra.

Modo indexado de base


Formato:

BX o BP

+ SI o DI (opcionales)

+ constante (opcional)

BX o BP indica una localidad base de la memoria

A partir de BX o BP, se puede tener un desplazamiento variable y uno constante

La diferencia es el segmento sobre el que trabajan por defecto:

BX por defecto en el segmento de datos

BP por defecto en el segmento de pila.

Ejemplos:

MOV AX, [BX]

MOV DX, [BX+2]

MOV CX, [BX+DI]

MOV DL, [BX+SI+3]

Direccionamiento implcito
Depende solamente de la instruccin, es decir, la instruccin no lleva parmetros.

Particularmente en instrucciones que no accesan memoria, o bien que tienen una forma
especfica de accesarla.
Ejemplos: PUSHF, POPF, NOP

Modo registro
Usa solamente registros como operandos

Es el ms rpido, pues minimiza los recursos necesarios (toda la informacin fluye dentro del EU
del CPU)

Ejemplo:

MOV AX, BX

Modo inmediato
Tiene dos operandos: un registro y una constante que se usa por su valor.

El valor constante no se tiene que buscar en memoria, pues ya se obtuvo al hacer el fetch de
la instruccin.

Ejemplo:

MOV AH, 9

Modo directo
Uno de los operandos involucra una localidad especfica de memoria

El valor constante se tiene que buscar en memoria, en la localidad especificada.

Es ms lento que los anteriores, pero es el ms rpido para ir a memoria, pues ya sabe la
localidad, la toma de la instruccin y no la tiene que calcular.

Ejemplo:

MOV AH, [0000]

MOV AH, Variable

Estas dos instrucciones seran equivalentes, si Variable est, por ejemplo, en la localidad 0 de
memoria. En la forma primitiva del lenguaje de mquina, como el primer ejemplo, se tiene que
indicar mover a AH el contenido (indicado por los corchetes), de la localidad 0 de los datos (lo
de los datos es implcito). El lenguaje Ensamblador, sin embargo, nos permite la abstraccin del
uso de variables, pero como una variable tiene una localidad determinada en memoria, para el
procesador funciona igual. La nica diferencia consiste en que el programador no tiene que
preocuparse por la direccin, ese manejo lo hace automticamente el Ensamblador.

Вам также может понравиться