- 4
- 0
- 约1.08万字
- 约 102页
- 2019-05-06 发布于广东
- 举报
第9章 自上而下的语法分析 第一节 语法分析概述 1. 语法规则 语法规则的作用: 确定一个单词符号序列是否构成了一个正确的句子(什么样的符号序列是合法的),并提供句子的结构。 描述语法规则的三种方式: 1) 自然语言 2) 语法图 3) 文法 1.1 自然语言 用自然语言来描述一个语言的语法规则。 例1. 陈述句的自然语言描述 陈述句可由主语 + 谓语 + 宾语构成,主语、宾语可由名词或代词构成,谓语可由动词构成。 以下符号串是否是陈述句: I study English、 English I study 例2. 表达式的自然语言描述 1) 一个“数字”可构成一个“表达式” 2) 一个“标识符”可构成一个“表达式” 3)“表达式+表达式”可构成一个新的“表达式” 4)“表达式*表达式”可构成一个新的“表达式” 以下符号串是否是表达式: aaa、 100、 aaa * 100 、50 aaa 100、 aaa + * 100、 50 + aaa * 100 1.2 语法图 用语法图(或识别图)来描述一个语言的语法规则。 识别的观点:对于一个符号串,如果在语法图中存在一条从入口边到出口边的路径,该路径所经过的结点序列正好组成该符号串,则称符号串能被语法图识别,该符号串是一个合法的句子。 例3. 陈述句的语法图 例4. 表达式的语法图 1.3 文法 用文法来描述一个语言的语法规则。 生成的观点:如果从开始符出发,重复使用产生式右边来替换产生式左边,可以推导出一个符号串,则该符号串是一个合法的句子。 例5. 陈述句的文法 陈述句 → 主语 谓语 宾语 主语 → 名词 | 代词 谓语 → 动词 宾语 → 名词 | 代词 名词 → English | Chinese 代词 → I | You 动词 → study 例6. 表达式的文法 表达式 → 数字 表达式 → 标识符 表达式 → 表达式 + 表达式 表达式 → 表达式 * 表达式 2. 文法 2.1 文法的定义 文法是描述语言的语法结构的形式规则。文法G定义为一个四元式 G =(Vt,Vn,S,P) Vt (Terminal Symbol) :终结符集合 Vn(Nonterminal Symbol) :非终结符集合 S (Start Symbol ):开始符 P(Production):产生式集合 终结符:构成句子的最小语法单位,词法分析器输出的每一个单词符号都是一个终结符。所有终结符的集合用Vt表示。 非终结符:更高一级的语法单位,一个非终结符反映了若干个终结符在句子中的作用和地位。所有非终结符的集合用Vn表示。 所有终结符和非终结符的集合用V表示。 开始符:表示第一个非终结符,用S表示。 产生式:表示非终结符的语法结构。所有产生式的集合用P表示。 文法实例1(陈述句的文法) Vt:{ I、You、English、Chinese、study } Vn:{ 陈述句、主语、谓语、宾语、名词、代词、动词 } S: 陈述句 P: 陈述句 → 主语 谓语 宾语 主语 → 名词 | 代词 谓语 → 动词 宾语 → 名词 | 代词 名词 → English | Chinese 代词 → I | You 动词 → study 说明 1. 文法可简单地用一组产生式表示。如前述陈述句的文法。 2. “→”读作“定义为”,“|”读作“或”。 ?→?1、?→?2、…、?→?n可缩写为 ?→?1 | ?2 | … | ?n。 3. 通常用大写字母表示非终结符,用小写字母表示终结符,用希腊字母表示符号串, 用 ε 表示空串。 文法实例2(表达式的文法) 例7. 文法G0 =(Vt,Vn,S,P) Vt = { + , * , ( , ) , i } Vn = { E } S = E P = { E → E + E E → E * E E → ( E ) E → i } 2.2 文法的分类 (1)无限制文法(0型文法)产生式为?→?,??V*VnV*, ??V* (2)上下文有关文法(1型文法)产生式为?A?→???,A?Vn,?、??V*,??V+ (3)上下文无关文法(2型文法) 产生式为A→? ,A?Vn, ??V* (4)正则文法(3型文法)产生式为A→?或A→?B, ??Vt*,B?Vn 2.3文法与语言 (1) 推导与归约 设文法G=(Vt,Vn,S,P),如果αβ??V*,且有β→?,则称αβ?可直接推导出α??,记为:αβ??α??。 推导:0次或以上的直接推导, α1 ? αn。 1次或以上的直接推导, α1 ? αn。 归
您可能关注的文档
- 滁州学院计算机与信息工程学院计算机网络课件第17讲 传输层(3).ppt
- 滁州学院计算机与信息工程学院计算机网络课件第18讲 应用层(1).ppt
- 滁州学院计算机与信息工程学院计算机网络课件第19讲 应用层(2).ppt
- 滁州学院计算机与信息工程学院计算机网络课件第20讲 网络安全与管理.ppt
- 滁州学院数据结构课件第八章 排序(C语言版).ppt
- 滁州学院数据结构课件第八章 图(C++语言版).ppt
- 滁州学院数据结构课件第二章 数组(C++语言版).ppt
- 滁州学院数据结构课件第二章 线性表(C语言版).ppt
- 滁州学院数据结构课件第九章 排序(C++语言版).ppt
- 滁州学院数据结构课件第六章 树与森林(C++语言版).ppt
- 2026年全球AI教育市场自适应学习系统与教育大数据分析.docx
- 2026年全球AI教育市场数据驱动决策分析.docx
- 2026年全球AI法律合规性检查技术路线图.docx
- 2026年全球AI法律咨询市场发展机遇与挑战.docx
- 2026年全球AI法律咨询市场合同审查自动化技术政府支持政策.docx
- 智慧农业无人机作物生长监测与病虫害防治信息化平台可行性分析报告.docx
- 2025年生态旅游景区停车场新能源汽车停车需求预测报告.docx
- 2026年全球AI法律咨询市场竞争格局分析.docx
- 2026年全球AI教育市场教师技术应用案例.docx
- 2026年全球AI教育市场教师角色转型与教育创新激励机制研究.docx
最近下载
- 深度解析(2026)《GBT 15555.8-1995固体废物 总铬的测定 硫酸亚铁铵滴定法》.pptx VIP
- 新大象版科学六年级下册全册精编知识点.pdf
- 钢轨探伤正常波形及图像识读王孟君课件.pptx VIP
- 2025年食品检验工食品理化检测考试试卷:理化指标分析.docx VIP
- 超声波常见异常波形识读王孟君课件.pptx VIP
- 跨境数据流动与个人信息保护.docx VIP
- 考试2018常规理化岗位考核.pdf VIP
- 轨头核伤波形及图像识读王孟君课件.pptx VIP
- 单元工程施工质量检验表与验收表(样表:4小型蓄水工程)(SLT 336—2025)水土保持工程质量验收与评价规范.docx VIP
- 单元工程施工质量检验表与验收表(样表:3梯田工程)(SLT 336—2025)水土保持工程质量验收与评价规范.docx VIP
原创力文档

文档评论(0)