Judge_LL(1)

所属分类:编译器/解释器
开发工具:C/C++
文件大小:144KB
下载次数:653
上传日期:2006-03-09 11:24:17
上 传 者zyf628
说明:  本设计使用C语言实现了对简单方法描述的LL(1)文法的判定。该设计程序实现了:⑴分别求出每一产生式的右部的FIRST 集、每一个非终结符的FOLLOW集和每一产生式的SELECT集;⑵判定是否是LL(1)文法;⑶画出预测分析表;⑷对给定的符号串判定是否是文法中的句子,分析过程在屏幕上打印出来。 欢迎大家给程序提出富贵意见!
(the design of the C language to describe a simple method of LL (1) grammar convicted. The design process was realized : 1 were calculated for each production of the right of the FIRST episodes, each end of a non-Fu FOLLOW sets and the production of each SELECT set; 2 determine whether LL (1) grammar; 3 paint Forecast and Analysis table; 4 the right to determine whether or not a bunch of symbols is grammar the sentences analysis on the screen printed. Welcome to the procedure rich views!)

文件列表:
报告\编译课程设计报告(张玉峰).doc (1027584, 2006-03-09)
报告 (0, 2006-03-09)
源程序\LL1.C (22312, 2006-03-06)
源程序\LL1.h (1673, 2006-03-06)
源程序 (0, 2006-03-06)
程序\demo1.dat (53, 2006-02-26)
程序\demo2.dat (46, 2006-02-27)
程序\LL1.EXE (33997, 2006-03-06)
程序 (0, 2006-03-06)

运行LL1.exe,按照提示操作即可。 程序只接受文件输入,所以在对文法进行判定之前,先将文法写成文本文件,文件的书写规则附在最后。程序中提供了演示文法,观看方法请根据屏幕提示进行操作。 demo1.dat和demo2.dat即是演示文法,使用时需将两者与LL1.exe放置在同一目录中。 由于该程序的纠错能力不强,请严格按照规则输入。 输入自定义的文法文件时保证输入的路径和文件名是正确的; 输入符号串时务必以“#”结尾。 文法文件书写规则: 文法文件的规则格式为“左部>右部”,左部为一非终结符,右部的文法符号之间不允许有空格,右部结束后直接回车或文件结束,规定文件的第一个字符为文法的开始符号;格式中使用“>”而非“->”的原因在于简化词法分析,可以避免在读入字符“-”时的分情况处理(因为“-”也是一个终结符)。举例如下: S>AB S>bC A>& A>b B>& B>aD C>AD C>b D>aS D>c//结束

近期下载者

相关文件


收藏者