逆波兰表达式

首先两个表达式:a/2 与a>>1,选哪个?
a/2需要六个指令集;而a>>1只需要调汇编语言,一个指令集就够了

计算机运算过程 将中缀表达式--》后缀表达式

如:9+(3-1)*3+10/2:中缀表达式

过程:数字保存,符号入栈,遇匹配的闭括号弹出里面的运算符号;遇新进的运算符号,如果新的比栈顶运算符高级(从低到高排列顺序:+-/),入栈,如果新的比栈顶低级,将栈顶的出栈,新的入栈。
9 3 1- 3
+10 2 / + :后缀表达式
运算过程:数字入栈,遇运算符取两个数字计算,再压入栈

原因:高级语言不是直接用来操作硬件

你可能感兴趣的:(逆波兰表达式)