X >Y X…A Y …
当且仅当存在一个产生式A→…XB…
XB
并有B+Y…
…… BC …
X ⊲Y :
…
当且仅当存在一个产生式A→…BC… .
并有B+…X,C*Y…
.
. ..… Y.
X
Y
文法G为简单优先文法如果满足: • 对于任意两个语法符号X和Y,至多成立一种 优先关系; • 任意两个产生式都具有不同的右部.
EE1 E1E1+ T1 | T1 T1T TT * F | F F(E) | i
)
i 实例
#
E FIRST E1 ,T1
E1 E1,T1
T1 T ,F ,( ,i
T T ,F ,( ,i
ห้องสมุดไป่ตู้F ( ,i
LAST E1 ,T1 ,T ,F ,),i T1 ,T ,F ,),i T ,F ,),i F ,),i
7
文法优先关系的确定
FIRST(W) ={S | W + S…,S(VNVT)} LAST(W) ={S | W + …S,S(VN VT)}
若有U…SiSj…: 则有Si Sj ; 若Sj有U…SiW…:任SjFIRST(W),有Si ⊲ Sj 若有U…VW…:任SiLAST(V), Sj(FIRST(W) {W})
Shift 3. M (L
Shift Shift
4. L Ma) 分析字符串:b(aa)b
Reduce[2]
Shift
#b(Ma
#b(Ma) ⊳
#b(L
⊳
#bM
#bMb
⊳
#Z
) b # Shift b # Reduce[4]