| 运算符 | # | ( | *,/ | +,- | ) |
| isp | 0 | 1 | 5 | 3 | 6 |
| icp | 0 | 6 | 4 | 2 | 1 |
| 步序 | 扫描项 | 项类型 | 动作 | 栈的变化 | 输出 |
| 0 | "#"进栈,读下一符号 | # | |||
| 1 | a | 操作数 | 直接输出,读下一符号 | # | a |
| 2 | + | 操作数 | isp("#")<icp("+"),进栈,读下一符号 | #+ | |
| 3 | b | 操作数 | 直接输出,读下一符号 | #+ | b |
| 4 | * | 操作数 | isp("+")<icp("*"),进栈,读下一符号 | #+* | |
| 5 | ( | 操作数 | isp("+")<icp("("),进栈,读下一符号 | #+*( | |
| 6 | c | 操作数 | 直接输出,读下一符号 | #+*( | c |
| 7 | - | 操作数 | isp("(")<icp("-"),进栈,读下一符号 | #+*(- | |
| 8 | d | 操作数 | 直接输出,读下一符号 | #+*(- | d |
| 9 | ) | 操作数 | isp("-")>icp(")"),退栈输出 | #+*( | - |
| 10 | Isp("(")==icp(")"),退栈,读下一符号 | #+* | |||
| 11 | + | 操作数 | isp("*")>icp("+"),退栈输出 | #+ | * |
| 12 | isp("+")>icp("+"),退栈输出 | #+ | + | ||
| 13 | isp("#")<icp("+"),进栈,读下一符号 | #+ | |||
| 14 | e | 操作数 | 直接输出,读下一符号 | #+ | e |
| 15 | / | 操作数 | isp("+")<icp("/"),进栈,读下一符号 | #+/ | |
| 16 | f | 操作数 | 直接输出,读下一符号 | #+/ | f |
| 17 | # | 操作数 | isp("/")>icp("*"),退栈输出 | #+ | / |
| 18 | isp("+")>icp("#"),退栈输出 | # | + | ||
| 19 | isp("#")==icp("#"),退栈,结束 |