Lecture-4 语法分析
0. 引言0.1 语法结构程序设计语言源程序的构成:语法结构一个实例0.2 文法一种用于描述程序设计语言语法的表示方法,能够自然地描述程序设计语言构造的层次化语法结构 1. 语法分析器输入:词法分析器输出的此法单元序列输出:语法树表示语法分析器功能: 语法分析器的类型: 类型检查,语义分析,翻译生成中间代码等往往和语法分析过程交错完成,实践中往往和语法分析放入一个模块,图上用“前
0. 引言0.1 语法结构程序设计语言源程序的构成:语法结构一个实例0.2 文法一种用于描述程序设计语言语法的表示方法,能够自然地描述程序设计语言构造的层次化语法结构 1. 语法分析器输入:词法分析器输出的此法单元序列输出:语法树表示语法分析器功能: 语法分析器的类型: 类型检查,语义分析,翻译生成中间代码等往往和语法分析过程交错完成,实践中往往和语法分析放入一个模块,图上用“前
1. 语言的识别与表达 ANTLR通过 RE 描述一个网页可能会崩溃——编码代价过大,且容易出错1.1 ANTLRANTLR (ANother Tool for Language Recognition)一个结构化文本的处理工具一个语言翻译器自动化的生成 lexer 和 parserANTLR 的优势1.2 ANTLR 能够做什么帮我们基于语法定义,自动化的生成一个 parser使用自上而下的方式
1. 词法分析的作用1.1 常见的概念词素词法单元1.1.2 词法单元的属性一个模式匹配多个词素时,必须通过属性来传递附加的信息。属性值会被用于语义分析、代码生成等阶段不同的目的需要不同的属性,所以属性值通常是一个结构化数据2. 词法单元的规约(正则表达式)模式:词法单元对应的词素可能具有的形式可以用正则表达式来表示2.1 相关概念字母表:所有合法输入的集合串:字母表中符号组成的又穷序列串的运算2