欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

文法G[E]分析表分析字符串(i+)-编译原理

发布时间:2025/3/15 编程问答 48 豆豆
生活随笔 收集整理的这篇文章主要介绍了 文法G[E]分析表分析字符串(i+)-编译原理 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

已知文法G[E]分析表(如下所示)

)

下面来分析(i+)

首先在分析区填入#E,余留下输入串为(1+)#,所用产生式查上表:E行(列,所以为:E->TE'

如下图所示:



随后E出栈,所用产生式E->TE'中的TE'由后往前依次入栈(先E'然后T)

第二步的分析栈为#E'T,余留输入串为(1+)#,这时候所用产生式查T'行(列,所以是:T->FT'

如下图所示:




然后T出栈,T'入栈F入栈

结果如下:




随后F出栈,)入栈E入栈(入栈

这时我们看见栈顶为(,余留字符串的首位也是(

所以呢,同时出栈并且所用产生式不用填

如下所示:




依次如下分析,分析到第九步时,我们发现第九步的所用产生式为F->ε

第十步时这个ε就不用入栈了。

如下所示:




到最后,把(i+)字符串分析完了,但分析栈没有结束,所以所产生式失败

如下所示:




下面给出一个成功的例子

分析字符串i+i*i

如下所示,在此就不具体分析了


总结

以上是生活随笔为你收集整理的文法G[E]分析表分析字符串(i+)-编译原理的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。