Pila

Docentes: Lic. Javier Vastag, Tssi. Matias Dirube Fecha: Mayo 2020 Apunte: Pila Autor: Matias Dirube Notación Polaca I

Views 136 Downloads 0 File size 55KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Docentes: Lic. Javier Vastag, Tssi. Matias Dirube Fecha: Mayo 2020

Apunte: Pila Autor: Matias Dirube

Notación Polaca Inversa La notación polaca inversa es una forma de escribir expresiones matemáticas que tiene la característica de organizar los operadores aritméticos y ponerlos luego de los operandos. Es una técnica cuya principal utilidad radica en el hecho de que nos permite evitar el uso de paréntesis y corchetes (tal es asi que hay calculadoras que trabajan en esta notación). En el contexto de la materia llamamos pila a esta notación porque ha sido usada en lenguajes de programación basados en stack (stack siendo la expresión en ingles de la palabra pila) y porque nos permite analizar la lógica de dicha estructura en el universo de la informática. La pila o stack tiene la particularidad de trabajar con un algoritmo LIFO, cuya sigla significa Last In First Out, que traducido seria Ultimo en Ingresar Primero en Salir. Esto nos da a entender que los elementos que entren a la pila van a ser “stackeados” – (apilados uno sobre el otro) y primero saldrán de la misma los últimos elementos ingresados. Realizaremos la conversión de una ecuación expresada en nuestra notación convencional a la notación polaca inversa. Para comprender el diagrama es fundamental que entiendan ciertas reglas que tiene esta transformación. 1) Todas las constantes y variables que entren a la pila, saldrán directamente de la misma. 2) Los operadores que entren a la pila van a apilarse, pero si la prioridad de ellos es mayor que la de los que están en la pila, van a expulsar a estos últimos. En la tabla a continuación pueden apreciar el orden de prioridad de los operadores. Ningún operador puede expulsar al +, y el + puede expulsar a cualquier otro operador que este en la pila. El resto de los operadores siguen el mismo criterio en base a la estructura de la tabla. Operad or * / +

Expulsa Null * / * / * -

3) En caso de haber paréntesis o corchetes, se ingresa la apertura de este y hasta que ese cierre se trabaja como si fuera una ecuación aparte (es decir, no pueden expulsar operadores que estén por fuera de esos paréntesis entre los que están comprendidos). CUANDO SE CIERRA EL PARENTESIS SALE TODO LO QUE QUEDÖ ADENTRO

1

Colaboracion de: Lic. Javier Vastag.

Docentes: Lic. Javier Vastag, Tssi. Matias Dirube Fecha: Mayo 2020

Apunte: Pila Autor: Matias Dirube

1) A -B*C-M+P*Q In   Out A>   A>                 A> A 4) * C-M+P*Q In   Out *>               *   -

ECUACION: A-B*C-M+P*Q 2) - B*C-M+P*Q In   Out ->                   A

AB

5) C -M+P*Q In   Out C>   C>          C >   *   AB C

6) - M+P*Q In   Out ->   *>           *>   ABC *

7) M +P*Q In   M>          M >   ABC* M

8) + P*Q In   +>         + ->   -> ABC*M --

9) P *Q In P>    

10) * Q In *>       ABC*M--P

       

Out M>    

Out    

* +

Out -> ->  

11) Ultimo ingreso (Q) In   Out Q>   Q>     *>   Q >  + > *>   +> ABC*M--P Q*+

Anexo – Ejercicios

2

3) B *C-M+P*Q In   Out B>   B>             B>   A B

Colaboracion de: Lic. Javier Vastag.

       

Out P>    

P>   + ABC*M-- P

RESULTADO ABC*M--PQ*+

Apunte: Pila Autor: Matias Dirube 1) 2) 3) 4) 5) 6)

Docentes: Lic. Javier Vastag, Tssi. Matias Dirube Fecha: Mayo 2020

C+P*F-V/T 5*L-O/P+W*2 A-B-R+P-T*O-F/W (A*B*C)/(2+T-Q)+B*X ((G+R-Q)*(5-T))+(L/Q)-6 ((V.M)+(R+T-Q))/(Z-(M/G))

Nota: Los resultados vamos a comprobarlos en las clases por videoconferencia. En la clase correspondiente al jueves 07, parte 3, podrán ver la comprobación de esta técnica en la explicación de la parte de ejecución, donde vimos gráficamente como se trabaja con la ecuación una vez pasada a Notación Polaca y como se procesan los operadores y operandos mediante el uso de la ALU (Unidad aritmética y lógica) herramienta de la que hablamos anteriormente .

3

Colaboracion de: Lic. Javier Vastag.