编译原理
CH_whale
这个作者很懒,什么都没留下…
展开
-
编译原理(4)LR(0)语法分析程序设计(Python实现)
(1)已知文法G[S']手工建立文法G[S']的LR(0)的项目集规范族DFA和LR(0)分析表。(2) 根据清华大学版《编译原理(第3版)》教材上LR(0)语法分析的算法思想及算法流程,构造LR(0)语法分析程序。(3)用该LR(0)语法分析程序对任意给定的键盘输入串进行语法分析,并根据栈的变化状态输出给定串的具体分析过程。如果分析成功,则输入输出串是给定文法的合法句子的结论;如果分析不成功,则输入输出串不是给定文法的句子的结论。原创 2022-12-09 15:30:42 · 1953 阅读 · 0 评论 -
编译原理(3)算符优先语法分析程序设计(Python实现)
(1)针对下列简单表达式文法G[E'],手工构造算符优先关系表。(2)根据清华大学版《编译原理(第3版)》教材上算符优先分析算法思想及算法流程,构造算符优先语法分析程序。(3)用该算符优先语法分析程序对任意给定的键盘输入串 i+i# 进行语法分析,并根据栈的变化状态输出给定串的具体分析过程。原创 2022-12-08 20:09:47 · 1391 阅读 · 0 评论 -
编译原理(2)LL(1)语法分析程序设计(Python实现)
对该文法构造预测分析表,并手工构造预测分析程序,对输入串m+m*m#进行语法分析,并根据栈的变化状态输出分析过程。3、根据清华大学出版、吕映之等编著的《编译原理》教材教材第五章Page 88的图5.11手工构造预测分析程序;4、用预测分析程序对键盘输入串m+m*m#进行语法分析,并根据栈的变化状态输出给定串的具体分析过程。1、判断上述文法G[S]是否LL(1)文法,若不是,将其转变为LL(1)文法;了解预测分析器的基本构成,掌握自顶向下的预测语法分析程序的手工构造方法。原创 2022-11-26 17:34:03 · 1451 阅读 · 0 评论 -
编译原理(1)简单词法分析程序(C++实现)
(1)判断由科学计数法表示的整数的正则表达式不完整,存在缺漏。(2)以逗号分割单句表达式,当char或string语句中存在逗号时,会出错。改进思路:当逗号存在于char或string中时,进行优先级判断。原创 2022-11-21 20:11:54 · 1386 阅读 · 0 评论