#词法分析
##CiFa.java:
编译原理课的词法分析实验 读取的文件名放在args[0]中 例子:
输入文件名:test.txt
test.txt 的内容如下:
main()
{
int a,b;
a = 10;
b = a + 20;
}
输出:
(1 , "main")
(5 , "(")
(5 , ")")
(5 , "{")
(1 , "int")
(2 , "a")
(5 , ",")
(2 , "b")
(5 , ";")
(2 , "a")
(4 , "=")
(3 , "10")
(5 , ";")
(2 , "b")
(4 , "=")
(2 , "a")
(4 , "+")
(3 , "20")
(5 , ";")
(5 , "}")`
#语法分析
##YuFa.java:
语法分析的接口。 已实现预测分析法,打算再写一个LR(1)的,因为自己写的文法不支持算法优先文法,而LR(1)相比LR(0),SLR难度差别也不大,学过的也就这几种。 ##YuCeFenXi.java:
预测分析法是自己先写出问法,然后把分析表画好再查表完成的。文法有挺多局限性,毕竟很多地方都不会写出问法(也有怕麻烦的原因),而且最重点的是先写出来哈。 ###预测分析表: ![](https://github.com/wenRC/ComplieEx/raw/master/yucefenxi map.jpg)