前言
编译原理比较难,第一遍视频看过了没有什么感觉,看书的时候决定一定要好好学习,所以有了这样一篇总结,包括:文法、正规式、有穷自动机
文法
终结符和非终结符
定义一个表达式:α
→
β
终结符:不能单独出现推导式左边的符号,类比:一个程序由多少行代码组成,就可以写成一个程序推导出很多条语 句。然而终结符属于一个原子量,他就相当于一个程序推导出来的其中一个语句,他不能再被分解,他是一个最终的状态。一般用小写字母表示终结符,所以说α只能是非终结符
非终结符:理解为可以拆分的元素,一般用大写字母表示非终结符
文法的类型
一个形式的文法是一个有序四元组G=(V,T,S,P)
- V:非终结符、变元,非空,不是最终结果,可以理解成为占位符
- T:终结符,非空
- S: 起始符,开始符号
- P:产生式,非空有穷集合,改写规则,形如α→β
- 0-型文法(无限制文法或短语结构文法)包括所有的文法。别称为短语文法,G的每条产生式α