3.1语法分析-语法分析简介
2016-06-02 13:22
253 查看
前端
源程序–<词法分析器–记号–语法分析–抽象语法树–语义分析器>–中间表示语法分析器的任务
记号流和语言的语法规则–>语法分析器–>语法树错误例子分析
语法错误处理if ((x >5) y = "hello" else z = 1,
经过语法分析后程序会报错
Syntax Error: line 1, missing )
Syntax Error: line 2, missing ;
Syntax Error: line 4, expecting ; but got ,
语法树的构建
if ((x >5) y = "hello" else z = 1,
经过语法分析会构建出一棵语法树:
线路图
数学理论:上下文无关文法(CFG)描述语言语法规则的数学工具
自顶向下分析
递归下降分析算法(预测分析算法)
LL分析算法
自底向上分析
LR分析算法
相关文章推荐
- 实现一个简单的计算器
- NOP(N) NOP_##N
- 编译器是如何工作的?(转)
- 写给想学java的朋友!
- 学java的必看!
- java中的加密!
- java中的使用类!
- LEX/FLEX词法分析器
- 如何模仿人的学习模式来教计算机程序解数学题?
- 上下文无关文法1
- 上下文无关文法2
- 编译原理——词法分析器
- 编译原理预习笔记------名词理解
- Simple scanner of c
- 编译原理:短语、直接短语、句柄、素短语
- 编译原理中FIRST集合与FOLLOW集合的算法
- 上下文无关文法解析
- 识别浮点常量问题-编译原理程序实现
- 计算的哲学(philosophy in coding)
- 编译原理 Chapter1 Introduction 第一章 简介