step by step.
目录
一、 程序设计语言的精确定义和描述
1、语法:语言结构的定义。
2、语义:描述语言的含义。
3、语用:从使用的角度描述语言。
二、 字母表与符号串
1、 字母表
例题:
2、 符号:字母表里的元素。
例题:
3、 符号串:符号的有穷序列。
例题:
三、 符号串的运算
1、 符号串的连接
例题:
2、 符号串的乘积
3、 符号串的幂运算
例题:
4、 集合的幂运算
例题:
5、 集合的正闭包和闭包
例题:
6、 例题
例题:
四、 文法的形式定义
1、 规则-BNF
2、 文法
例题:
例题:
五、 语言的形式定义
1、句子
例题:
2、 语言
3、 规范推导
4、 规范归约
例题:
5、 短语和句柄
例题:
六、 语法树
1、 语法树的生成
例题:
例题:
2、 子树
3、 简单子树
4、 短语、直接短语、句柄
5、 二义性(没有优先性的)
七、 2型文法、3型文法
1、 2型文法
2、 3型文法(正规文法)
3、 例题
例题:
八、 例题练习
光看不练没有效果
(eg. 赋值语句由一个变量、一个后随赋值号“=”、一个表达式构成。)
(eg. 先计算右部表达式的值,然后把所得结果送入左部变量中)
(eg. 赋值语句用于计算和保存表达式的值)
字母表是元素的非空又穷集合。(不是26个字母表)
例题:
机器语言的字母表:0、1——
注:字母表里的元素可以是数字、字母或其他符号
例题:
机器语言的字母表中的符号为0和1
例题:
的符符号串为:a,b,ab,ba,cba,abc,...
注:符号串中符号的顺序很重要。
符号串总是建立在某个特定字母表上的且只能由字母表上的有穷多个符号组成。
:不包含任何符号的序列
:不含任何元素的空集
:不包含任何符号的序列;
:不包含任何元素的空集。
串a和串b的连接,ab即,串b写在a串之后得到的字符串。
例题:
x=abc, y=10a; xy=abc10a, yx=10aabc
串a和串b的乘积,ab即,满足的所有构成的集合。
注:任意符号串x:
例题:
x=abc,
= abcabc
注意顺序
例题:
A={a,b}
=AA={aa,ab,bb,ba}
正闭包: = …
闭包: = { }
例题:
A={a,b}
正闭包::{a,b,aa,ab,bb,ba,aaa,aab,...}
闭包: :{,a,b,aabab,bb,ba,aaa,aab,...}
例题:
光看不练没有效果。。
有穷集合的语言描述:枚举法。
无穷集合的语言描述:文法(含递归) 。
文法的组成:文法终结符集合;文法非终结符集合;文法规则的集合。
一个符号与一个符号串的有序对——
文法:描述语言的语法结构的形式规则。文法是规则的非空有穷集合。
上下文无关文法:文法所定义的语法范畴完全独立于这种范畴可能出现的环境。
例题:
例题:
∑={0,1} , 则集合 ∑+表示为递归文法:
解:
A→0 A →1
A→A0 A →A1
仅含终结符号的句型是一个句子。
例题:
对: S→01| S01
有: S=>01
S=>0S1
S=>00S11
S=>000111
句型:01,0S1,00S11,000111
句子:01,000111
由文法G产生的所有句子所组成的集合就是语言L(G)。 (P16)
最左推导:每一步都替换最左边的非终结符号。
最右推导(规范推导):每一步都替换最右边的非终结符号。
规约:推导的逆过程。
例题:
句柄:一个句型的最左直接短语。
例题:
例题:
E→ T|E+T|E-T T→ F|T*F|T/F F→ (E)|i
例题:
G=(VT,VN,S,P), 其中
P: S→aAS | a A →SbA | SS | ba
自己也是自己的子树。
简单子树:只有单层分支的子树。
短语——子树的叶子形成的符号串。
直接短语——简单子树的叶子形成的符号串。
句柄——最左简单子树的叶子形成的符号串。
如果一个文法存在某个句子对应两棵不同的语法树,则称这个文法是二义的。
2型文法也称上下文无关文法,非终结符的替换不考虑上下文。
3型文法等价于正规式,也称正规文法。
例题:
考虑文法G[S]:
S → AB A → aA|a B → bB|b
定义的语言为:L(G[S])= { | n,m³1}
是2型文法。
但这个是线性问题,所以也可以写3型文法:
S → aA A → aA| bB B → bB| e
1. “→” 符号表示:_____
定义为;
2. 设有文法G[E]:
E → E+T | E-T | T
T → T*F | T/F | F
F → (E) | i
该文法句型E+T*F的句柄是:______
T*F;
3. 设有文法G[T]:
T → T*F | F
F → F↑P | P
P → (T) | a
该文法句型T*P↑(T*F)的直接短语是:_____
P; T*F
!考试加油 !