针对文法:G[E]:E->E+T|T T->T*F|F F->(E)|i 用c++编写程序利用LR(0)分析方法对该文法进行语法分析,构建i+i*i句型分析过程中符号栈的变化过程并输出分析表
时间: 2024-05-22 20:11:31 浏览: 8
这里给出该文法的LR(0)分析表和符号栈变化过程:
LR(0)分析表:
| | i | + | * | ( | ) | $ |
| :----: | :-: | :-: | :-: | :-: | :-: | :-: |
| 0 | s5 | | | s4 | | |
| 1 | | s6 | | | | acc |
| 2 | | r2 | s7 | | r2 | r2 |
| 3 | | r4 | r4 | | r4 | r4 |
| 4 | s5 | | | s4 | | |
| 5 | | r6 | r6 | | r6 | r6 |
| 6 | s5 | | | s4 | | |
| 7 | s5 | | | s4 | | |
| 8 | | s6 | | | s11 | |
| 9 | | r1 | s7 | | r1 | r1 |
| 10 | | r3 | r3 | | r3 | r3 |
| 11 | | r5 | r5 | | r5 | r5 |
符号栈变化过程:
对于输入串 i+i*i:
| 状态栈 | 符号栈 | 输入串 | 动作 |
| :------: | :--------------: | :--------------: | :--------: |
| 0 | $ | i+i*i$ | 移入 |
| 0 5 | $i | +i*i$ | 移入 |
| 0 5 6 | $iT | +i*i$ | 规约 |
| 0 5 2 | $E | +i*i$ | 移入 |
| 0 5 2 5 | $E+ | i*i$ | 移入 |
|0 5 2 5 4 | $E+( | i*i$ | 移入 |
|0 5 2 5 4 | $E+(i | *i$ | 移入 |
|0 5 2 5 4 | $E+(iT | *i$ | 规约 |
|0 5 2 5 2 | $E+(T | *i$ | 移入 |
|0 5 2 5 2 | $E+(T* | i$ | 移入 |
|0 5 2 5 2 | $E+(T*F | i$ | 规约 |
|0 5 2 5 2 | $E+(T | i$ | 规约 |
|0 5 2 5 2 | $E+T | i$ | 移入 |
|0 5 2 5 2 | $E+T*i | $ | 移入 |
|0 5 2 5 2 | $E+T*F$i | $ | 规约 |
|0 5 2 5 2 | $E+T$i | $ | 规约 |
|0 5 2 5 2 | $E+T | $ | 规约 |
| 0 5 2 | $E | $ | 接受 |
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)