话题
搜索

反向波兰符号


反向波兰表示法(RPN)是一种表示表达式的方法,其中运算符符号放在被操作的参数之后。波兰表示法是由波兰数学家扬·卢卡西维奇于20世纪20年代发明的,其中运算符位于操作数之前。20世纪50年代末,澳大利亚哲学家和计算机科学家查尔斯·汉布林(Charles L.Hamblin)建议将运算符放在操作数之后,从而创建了反向波兰符号。

例如,以下RPN表达式将生成2和3的和,即5:2 3+。

反向波兰表示法,也称为后缀表示法,与标准算术表达式的“中缀表示法”形成对比,在标准算术表达式中,操作符符号出现在操作数之间。

RPN的特性是,不需要括号来表示术语的评估或分组顺序。RPN表达式只是从左到右求值这大大简化了计算机程序中表达式的计算。例如,算术表达式(3+4)×5可以用RPN表示为3 4 + 5 ×.

实际上,可以使用堆栈结构。从左到右读取表达式,以下操作是执行时间:

1.如果表达式中接下来出现一个值,上的值堆栈.

2.如果接下来出现操作员,流行音乐堆栈顶部的两个项,并将操作结果推送到堆栈.

使用解析算法作为递归下降解析,可以将标准中缀算术表达式转换为RPN表达式。

RPN用于Hewlett-Packard和一些德州仪器计算器中,并在一些计算机语言内部使用。


另请参见

堆栈

此条目由贡献作记号麦克罗伊

与Wolfram一起探索| Alpha

工具书类

计算器主页。“反向波兰符号。”http://www.calculator.org/rpn.html.斯通,A.“反向波兰符号”http://www-stone.ch.cam.ac.uk/documentation/rrf/rpn.html.

引用的关于Wolfram | Alpha

反向波兰符号

引用如下:

马克·麦克罗伊.“反向波兰符号”。摘自数学世界--Wolfram Web资源,创建人埃里克韦斯特因.https://mathworld.wolfram.com/ReversePolishNotation.html

主题分类