LALR分析表构造算法之一: (1)构造文法G的LR(1)项目集族C={ I0,I1,……,In} 把所有的同心集合并在一起,记作C’={ J0,J1,……,Jm}为全并后的新族,含有项目[S’→S·,#]的项集Jk为分析表的初始状态集 (2)对于C’构造ACTION表: a) 若该项目为移入项,即为[A→α·aβ,b]形式则置ACTION[k.a]为Sj,其中Jj=GO(Jk,a) b) 若该项目为归约项,即为[A→α·,b]的形式,则置ACTION[k,b]=rj,其中j为第j个产生式 c) 若项目为[S’→S·,#],则置ACTION[k,#]为“接受”,即acc (3) GOTO表的构造 假定Jk是Ii1, Ii2, Ii3,……Iit全并后的新集。由于所有这些Ii同心,那么GO(Ii1,X), GO(Ii2,X),GO(Ii3,X),……GO(Iit,X)也同心,于是将这些同心集合并起来,记为Jj,则有GO(Jk,X)= Jj于是若GO(Jk,A)=Jj,则置GOTO[k,A]=j,其中A∈Vn (4) 分析表中空即为出错
2023-01-03 00:17:42 1.21MB 编译原理
1
关于编译原理的实验完全代码,包括语法分析输入输出条例演示
2022-09-19 14:00:43 23KB 编译原理_演示
本人讲课用的课件。需要安装.net控件。 涵盖从语法到代码生成,可视化演示编译各部分的工作。 章节 程序名 内容 3.2.3 CiFaFenXizhuangtaizhuanhuantu.exe 词法分析-状态转换图 4.4 DiGuiXiaJiangFanYi.exe 递归下降翻译 7 DiGuiXiaJiangFanYiAST.exe 递归下降翻译:抽象语法树 4.4 Figure4.2.exe 递归下降分析器:图4.2 4.4 Figure4.3.exe 递归下降分析器:语法图4.3 4.5 YUCEFENXI.exe 预测分析程序实现 5.2 SuanFuYouXian.exe 算符优先分析 5.3.1 Figure5.5LR.exe LR分析器,图5.5 5.3.1 Figure5.5LRDFA.exe LR分析器,图5.5:可视下推自动机 5.3.2 LR0DFA.exe 简单的LR(0)文法 5.3.3 Figure5.9LRDFA.exe 文法5.9的活前缀识别器 5.3.4 Figure5.10LR1.exe 规范LR分析表,图5.10 5.3.4 Figure5.10LR1DFA.exe 规范LR分析表,图5.10:可视下推自动机 5.3.5 Table5.6LALRDFA.exe LRLA分析:可视下推自动机 5.3.6 ERYIWENFALR.exe 二义文法应用 5.3.6 ERYIWENFALRDFA.exe 二义文法应用:可视下推自动机 5.3.7 LRErrorHandling.exe LR分析的错误处理 6.3 S_SHUXINGWENFA.exe S属性文法的自下而上计算 6.5.2 Table610.exe 分析栈中的继承属性,表6.10 7.1 Table7_1.exe 表达式翻译成后缀式的语义规则实现 7.1.3 Table7_3.exe 把赋值语句翻译为三地址代码的属性文法实现 7.2.1 Figure7_6.exe 计算说明语句中名字的类型和相对地址 7.3 Assign.exe 赋值语句的翻译 7.3.2 Array.exe 数组元素的访问 7.4.1 Figure7_13.exe 布尔表达式的数值表示法的翻译模式 7.4.2 Table7_7.exe 作为条件控制的布尔表达式的翻译 7.5 Table7_8.exe 控制流语句的属性文法实现 7.6 CallFunc.exe 过程调用的处理 9.1.2 Swap.exe 参数传递实例:swap 10.2 JuBuYouHuaExcise10.3.1.exe 局部优化练习10.3.1 10.2 JuBuYouHuaExcise10.3.2.exe 局部优化练习10.3.2 10.2 JuBuYouHuaExample10.4.exe 局部优化练习10.4 11.3 CodeGenExample11.1.exe 代码生成例11.1 11.3 CodeGenExercise11.1.exe 代码生成练习11.1 11.5 CodeGenExercise11.2DAGSorted.exe 代码生成练习11.2,DAG优化 11.5 CodeGenExercise11.2Original.exe 代码生成练习11.2,无DAG优化 11.5 DAGCodeGen.exe DAG的目标代码 11.5 DAGCodeGenFigure11.9.exe 图11.9 11.3.1 DaiYongXinXi.exe 待用信息 11.3 P313.exe 一个简单的代码生成器
2022-06-03 18:51:37 580KB 编译原理 课件 可视化 陈火旺
1