欢迎来到天天文库
浏览记录
ID:22778305
大小:302.41 KB
页数:11页
时间:2018-10-31
《lr(1)实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、LR(1)语法分析09计算机(2)班组员:张清风030902233刘冰静030902241郑珊珊030902245郭俊杰030902206实验二.•语法分析实验I.【实验0的】根据给出的文法编制LR(1)分析程序,以便对任意输入的符号串进行分析。木次实验的目的主要是加深对LR(1)分析法的理解。II.【实验内容】对所给语言文法,构造LR(1)分析表,编制语法分析程序,要求将错误信息输出到语法错误文件中,并输出分析句子的过程(显示栈的内容):实验报告必须包括采用的文法,设计的思路,LR(1)分析表,以及测试报告(输入测试例子,输出结果),设计的体会。III.E要求的文法
2、内容】i?ogi?am>::=::=舞list><>::=e>::=float;Iixdt::=idI〈id资JOS—1iSt;〉,id::=id=ressicarL>beginendif〈condition>thenwhile〈sta/temerrt—list〉::=〈statement〉
3、4、st>:::=::=<5、>6、<=7、>=::=〈term>8、9、—::=10、=木11、/::=id12、num13、(〈expression〉)i.设计14、简要描述LR(1)分析表的构建:1、调整后的文法计非终结符的first集:I晋C:UsersAdministratorDesktop衝析newgrammar2.exe输入;五注.棚八1*口広,—>->.->->->->:-15、>float->int->id->,id<8tateRenC>->id■;<8tatenent>->id■->begin《statement—list>end->ifthen<8tatemont>->dowhile《condition〉-><8tatenent-li8t>-16、>〈statement—list>:〈condition〉—><〈expression〉>-><->>-><■->>■〈expression〉->〈term〉一>->♦〈adding一opei*Ator>—>—->一>17、i*>〈factor〉〈multiplying一opepator>->*〈multiplying一ope—>/〈factor〉->id->nun-><〈expression〉>:floatint〈block〉:floatint:floatint:idbeginifdo:floatint:floatint:id:idbeginifdo〈expression〉:id
4、st>:::=::=<
5、>
6、<=
7、>=::=〈term>
8、9、—::=10、=木11、/::=id12、num13、(〈expression〉)i.设计14、简要描述LR(1)分析表的构建:1、调整后的文法计非终结符的first集:I晋C:UsersAdministratorDesktop衝析newgrammar2.exe输入;五注.棚八1*口広,—>->.->->->->:-15、>float->int->id->,id<8tateRenC>->id■;<8tatenent>->id■->begin《statement—list>end->ifthen<8tatemont>->dowhile《condition〉-><8tatenent-li8t>-16、>〈statement—list>:〈condition〉—><〈expression〉>-><->>-><■->>■〈expression〉->〈term〉一>->♦〈adding一opei*Ator>—>—->一>17、i*>〈factor〉〈multiplying一opepator>->*〈multiplying一ope—>/〈factor〉->id->nun-><〈expression〉>:floatint〈block〉:floatint:floatint:idbeginifdo:floatint:floatint:id:idbeginifdo〈expression〉:id
9、—::=
10、=木
11、/::=id
12、num
13、(〈expression〉)i.设计
14、简要描述LR(1)分析表的构建:1、调整后的文法计非终结符的first集:I晋C:UsersAdministratorDesktop衝析newgrammar2.exe输入;五注.棚八1*口広,—>->.->->->->:-
15、>float->int->id->,id<8tateRenC>->id■;<8tatenent>->id■->begin《statement—list>end->ifthen<8tatemont>->dowhile《condition〉-><8tatenent-li8t>-
16、>〈statement—list>:〈condition〉—><〈expression〉>-><->>-><■->>■〈expression〉->〈term〉一>->♦〈adding一opei*Ator>—>—->一>17、i*>〈factor〉〈multiplying一opepator>->*〈multiplying一ope—>/〈factor〉->id->nun-><〈expression〉>:floatint〈block〉:floatint:floatint:idbeginifdo:floatint:floatint:id:idbeginifdo〈expression〉:id
17、i*>〈factor〉〈multiplying一opepator>->*〈multiplying一ope—>/〈factor〉->id->nun-><〈expression〉>:floatint〈block〉:floatint:floatint:idbeginifdo:floatint:floatint:id:idbeginifdo〈expression〉:id
此文档下载收益归作者所有