语法分析程序的设计与实现ppt课件
22页1、语法分析器的设计与实现自上而下的语法分析,阎 艳 2010.11,编译原理实验2,语法分析器的实质(ch4.1),功能:验证源程序是否符合语法规则。 输入:词法分析器生成的单词符号序列-种别 输出:语法分析树;如有错,则指明错误的性质和位置。,词法分析器,语法分析器,编译程序后续部分,符号表,语法分析器的分类,按照语法树的建立方法,分为 自上而下分析法 递归下降 预测分析 自下而上分析法 算符优先,自上而下语法分析器的实现,1 从语言定义中整理出语法规则,语法的定义,语法规则 通常用上下文无关文法描述(ch2.5),micro语言定义,仅有的数据类型是整型INT。 所有的标识符采用显式声明,且长度不超过32个字符。标识符必须以字母开头并由字母、数字和下划线组成。 整型常量由一串数字组成。 注释由“-”开始,并在当前行尾结束。 语句类型为: 赋值语句:ID := Expression;Expression是由标识符、文字常量、+ - * / 运算符组成的中缀表达式结构,其中允许含有括号。 输入输出语句:read( List of IDs);write(List of Expression
2、s); begin、end、read、write、INT都是保留字。 每条语句以分号(;)结束。程序体由begin和end界定。 词法记号不能跨行。,1 从语言定义中整理出语法规则,/程序体由begin和end界定 $begin $end /每条语句以分号(;)结束 $semicolon | | | | | .,例1 $begin $end bool program() symbol=scanner(); if ( symbol = $begin) then /调用词法分析器获取下一个单词 symbol=scanner(); if ( statements() ) then if ( symbol = $end) return true; return false; ,例2 $add | $sub | bool expression() ,expression() $add term(),expression() $sub term(),term(),问题:左递归 回溯 解决:对语法规则加以限制 自上而下的语法要求:LL(1)文法,自上而下语法分析器的实现,2 将语法规则改造为LL(1
《语法分析程序的设计与实现ppt课件》由会员我***分享,可在线阅读,更多相关《语法分析程序的设计与实现ppt课件》请在金锄头文库上搜索。
2020届中考英语备考复习-作文课件
2019年中考英语复习-专题十五-交际运用(试卷部分)课件
2019届二轮复习-高中英语-情态动词和虚拟语气课件
2019届一轮复习苏教版物质的跨膜运输课件
2019年北师大版英语单元复习课件::Unit17Laughter课件北师大版选修6
2021届新中考物理冲刺备考复习-力-弹力-重力课件
2019届一轮复习人教版种群的特征和数量变化课件
2020年高考地理一轮复习--等高线地形图-课件
2019版高考英语一轮复习-Unit-1-Living-well课件
2019届一轮复习人教版孟德尔的遗传定律——基因分离定律课件
2019届高三第二轮复习专题二万有引力定律及其应用课件
2020最新部编版语文五年级上册23-鸟的天堂课件含课后练习
2020版高考(浙江)一轮复习:第7讲-细胞呼吸课件
2020年新教材高中英语UNIT4HISTORYANDTRADITIONSSectionⅢDiscoveringUsefulStructures课件必修第二册
2019届高考历史二轮复习阶段三专题十三罗斯福新政与当代资本主义的新变化课件2
2019版高考生物二轮复习-专题三-细胞的生命历程-考点9-细胞分裂过程图像和坐标曲线的识别课件
(通史版)2021版高考历史一轮复习第4部分高考讲座(三)2高考非选择题(12分开放探究题)规范答题讲练课件
2019届高三地理复习第五讲--《区际联系与区域协调发展》课件
2021人教部编版历史九年级上册习题课件:第18课美国的独立
2020学年新教材高中英语Unit1FoodforthoughtPeriodTwoStartingout课件
2024-02-23 26页
2024-02-23 24页
2024-02-23 14页
2024-02-23 21页
2024-02-23 24页
2024-02-23 23页
2024-02-23 35页
2024-02-23 22页
2024-02-23 23页
2024-02-23 33页