NOTACIÓN POLACA INVERSA

 

NPI = Notación Polaca Inversa (RPN en Inglés) es un método algebraico alternativo de introducción de datos. Su nombre viene por analogía con la relacionada notación polaca, una notación de prefijo introducida en 1920 por el matemático polaco Jan Lukasiewicz, en donde cada operador está antes de sus operandos.

 

LA NOTACION

En la notación polaca inversa es al revés, primero están los operandos y después viene el operador que va a realizar los cálculos sobre ellos. Tanto la notación polaca como la notación polaca inversa no necesitan usar paréntesis para indicar el orden de las operaciones mientras la aridad (número de argumentos necesarios para el operador funcione) del operador sea fija.

 

NPI nuestra notación (expresión algebraica)

3 4 + => 3 + 4

7 7

 

Ventajas

  • ·        Los cálculos se realizan secuencialmente según se van introduciendo operadores, en vez de tener que esperar a escribir la expresión al completo. Debido a esto, se cometen menos errores al procesar cálculos complejos.

  • ·        El proceso de apilación permite guardar resultados intermedios para un uso posterior. Esta característica permite que las calculadoras RPN computen expresiones de complejidad muy superior a la que alcanzan las calculadoras algebraicas.

  • ·        No requiere paréntesis ni reglas de preferencia, al contrario que la notación algebraica, ya que el proceso de apilamiento permite calcular la expresión por etapas.

  • ·        En las calculadoras RPN, el cálculo se realiza sin tener que apretar la tecla "=" (aunque se requiere pulsar la tecla "Enter" para añadir cifras a la pila).

  • ·        El estado interno de la calculadora siempre consiste en una pila de cifras sobre las que se puede operar. Dado que no se pueden introducir operadores en la pila, la notación polaca inversa es conceptualmente más sencilla y menos dada a errores que otras notaciones.
Por ejemplo, la expresión "20 - (4 + 3) * 2" en RPN es "20 4 3 + 2 * -".



Comentarios

Entradas más populares de este blog

2.3.4 Instrucción de control

Código en EMU8086

Código Java Notación polaca-polaca Inversa