【文章內(nèi)容簡(jiǎn)介】
E + T E + T T * F T F i P 算符優(yōu)先分析算法 p93 k:=1。 S[k]:= ‘’ REPEAT …… UNTIL a= ‘’ 1 REPEAT 把下一個(gè)符號(hào)讀入 a中 。 IF S[k]∈ VT THEN j:= k ELSE j:=k1。 WHILE S[j] a DO //歸約 { REPEAT Q:= S[j]。 IF S[j1]∈ VT THEN j:=j1 ELSE j:=j2 UNTIL S[j] Q。 把 S[j+1]...S[k] 歸約為某個(gè) N。 k:=j+1。 S[k]:=N。 } IF S[j] a OR S[j] a //移進(jìn) BEGIN k:=k+1。 S[k]:=a END ELSE ERROR UNTIL a= ‘’ j指向棧頂或次棧頂?shù)慕K結(jié)符 尋找可歸約串 E→E+T | T T→T*F | F F→P↑F | P P→(E) | i 補(bǔ)充例 1: 寫出句型 T+T*F+i 的算符優(yōu)先分析過(guò)程 求出算符優(yōu)先關(guān)系表 (p90 表 ) + * ↑ i ( ) + * ↑ i ( ) 算符優(yōu)先分析 歸約過(guò)程 步驟 符號(hào)棧