Está en la página 1de 3

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

ARQUITECTURA DE COMPUTADORAS

Nombre: Ximena Sarango.

MQUINA DE PILA
Cero operando, tambin llamada mquina de pila: todas las
operaciones aritmticas se ejecutan en la parte superior de una o dos
posiciones de la pila, push y pop son las instrucciones utilizadas para
acceder a la memoria: push a, push b, add, pop c.
Es un modelo computacional en el cual la memoria de la computadora
toma la forma de una o ms pilas. El trmino tambin se refiere a un
computador real implementando o simulando una mquina de pila
idealizada, tambin puede referirse a una mquina verdadera o
simulada con un conjunto de instrucciones de "0 operandos".
En tal mquina, la mayora de las instrucciones implcitamente operan en
valores en el tope de la pila y reemplazan esos valores por el resultado.
Tpicamente tales mquinas tambin tienen una instruccin "load" y una
instruccin "store" que leen y escriben a posiciones arbitrarias de la RAM.
(Como el resto de las instrucciones, las instrucciones "load" y "store" no
necesitan ningn operando en una mquina de pila tpica - ellas siempre
toman la direccin de la RAM que se quiere leer o escribir desde el tope
de la pila).
La ventaja de las mquinas de pila ("conjunto de instrucciones de 0
operandos") sobre las mquinas de acumulador ("conjunto de
instrucciones de 1 operando") y las mquinas de registro ("conjunto de
instrucciones de 2 operandos" o un "conjunto de instrucciones de 3
operandos") es que los programas escritos para un conjunto de
instrucciones de "0 operandos" generalmente tienen una densidad de
cdigo ms alta que los programas equivalentes escritos para otros
conjuntos de instrucciones.
La mquina de pila tiene:
-

memoria independiente para instrucciones y datos


toda operacin es con valores de pila
operaciones
aritmtica entera

manipulacin de pila
control de flujo

La CPU no contiene registros de propsito general sino una pequea


memoria implementada como una pila que utiliza para almacenar datos
temporales y evaluar expresiones.
-

Para utilizar un dato (variable o constante) en una expresin, es


preciso insertarlo previamente en la pila.
PUSH variable
Para almacenar una variable en memoria, habr que extraerla de
la cima de la pila.
POP variable

Operandos en instrucciones aritmticas y lgicas:


-

2 operandos origen, que se toman siempre de la cima de la pila


(son extrados de ella).

1 operando destino, que se inserta en la cima de la pila.

Los tres operandos son implcitos.

Mquinas de pila: ejemplo


A Escribir un fragmento de programa para evaluar la expresin
A=B/C+D*E
- A,B,C,D y E son variables en memoria.
PUSH B
PUSH C
DIV
PUSH D
PUSH E
MUL
ADD
POP A

Insertar el contenido de la variable B en la pila


Insertar el contenido de la variable C en la pila
Dividir B entre C y guardar resultado en la pila
Insertar el contenido de la variable D en la pila
Insertar el contenido de la variable E en la pila
Multiplicar D*E y guardar resultado en la pila
Sumar B/C con D*E
Almacenar el resultado en la variable A

Mltiples
y
amplias
Pila
Cero
operando
Computadoras
En la mayora de las arquitecturas de una pila es apoyada directamente
por el hardware y se utiliza para la direccin de retorno de subrutina nido,
para pasar parmetros entre rutinas, y para el almacenamiento temporal
de los menos importantes variables locales dentro de las rutinas.
Mltiples arquitecturas pila utilizan pilas separadas para la anidacin de
direcciones de retorno y para la celebracin de los parmetros pasados
entre rutinas. ML0 es una designacin para una mquina de pila mltiple

con grandes pilas y cero operando anotacin en el conjunto de


instrucciones. [Koopman, 1989].
Las mquinas que conectan la ALU a una pila de parmetros se clasifican
como la arquitectura cero operando porque la parte superior de la pila
de parmetros es el operando implcito de instrucciones, esto tambin se
llama pila "pura" de direccionamiento, no hay parmetros adicionales a
las instrucciones para especificar registrar parmetros de seleccin.
Caminos Instruccin son ms simples en el hardware de esta manera,
Stack Computadoras, publicado en 1989, figuran veinte mquinas en
esta categora. El autor, Dr. Koopman, trabaj en el diseo de una serie
de esas mquinas y entra en gran detalle en el razonamiento involucrado
en las decisiones con respecto a las compensaciones de arquitectura.
Mquinas de pila prcticas
Las mquinas con un conjunto de instrucciones basado en pila pueden
tener uno o ms pilas. Algunas mquinas de pila son mquinas 2 pilas,
con las dos pilas usualmente siendo una pila de datos y una pila de
retorno, el primero para las operaciones en datos y el ltimo para las
direcciones de retorno. Otras mquinas usan la misma pila para ambos.
Una mquina usando los registros del procesador para los operandos
puede simular fcilmente una mquina de pila. Tal simulacin es llamada
a veces una mquina de pila virtual. La ventaja de un conjunto de
instrucciones basado en pila sobre una arquitectura basada en registros,
son instrucciones ms cortas, puesto que tienen que ser especificadas
menos direcciones de operando.
Las implementaciones comerciales de las mquinas de pila
generalmente incluyen un pequeo conjunto de registros de propsito
especial para tratar el encerramiento de contextos, es decir los marcos
(frames) de pila que no es el marco de la pila superior. Las mquinas de
pila prcticas no son as idnticas a las mquinas de pila de la teora de
autmatas pero permiten que una CPU basada en pila sea enteramente
conveniente para la computacin de propsitos generales.

Bibliografa
-

http://es.wikipedia.org/wiki/M%C3%A1quina_de_pila
http://www.ultratechnology.com/ml0.htm
https://www.uclm.es/profesorado/licesio/Docencia/ETC/16_1_CBasRepInstMD_itis.pdf
http://es.slideshare.net/wilfredop89/maquina-de-pila-abstracta

También podría gustarte