您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > 编译原理实验3下递归降法的语法分析器
实验3下递归降法的语法分析器一、实验目的掌握语法分析器的构造原理,掌握递归下降法的编程方法。二、实验内容用递归下降法编写一个语法分析程序,使之与词法分析器结合,能够根据语言的上下文无关文法,识别输入的单词序列是否文法的句子。(注意,需要改写文法,消除左递归等)program→blockblock→{stmts}stmts→stmtstmts|stmt→id=expr;|if(bool)stmt|if(bool)stmtelsestmt|while(bool)stmt|dostmtwhile(bool);|break;|blockbool→exprrelopexpr|exprexpr→expr+term|expr-term|termexpr→termexpr’expr’→+termexpr’|-termexpr’|term→term*factor|term/factor|factorterm→factorterm’term’→*factorterm’|/factorterm’|factor→(expr)|id|num四、运行结果五、遇到问题1.如果不设置大中小括号的token,用”.{printf(“%s”,yytext);returnyytext[o];}”表示所有括号,在词法分析中输出不会有误,但是在语法分析的时候不能进行match。2.在text.1中要把每一个printf删掉,不然输出会有影响(如下)
本文标题:编译原理实验3下递归降法的语法分析器
链接地址:https://www.777doc.com/doc-2068892 .html