簡體   English   中英

首先並遵循以下語法

[英]First and follow in the following grammar

給出了以下語法:-

E->E+T|T 
T->T*F|F 
F->id

我試圖找到第一個並跟隨。 任何人都可以驗證它是否正確???

First(E)={id}
First(T)={id}
First(F)={id}
Follow(E)={+,id}
Follow(T)={+}
Follow(F)={id,*}

第一組是正確的,

FOLLOW(A) of non-terminal A is the set of terminal symbols that can follow in the   
derivation sequence

FOLLOW(E),檢查它在生產右側的位置。 它在那里

    E->E+T

當我們認為這個產生式用於推導時,E 后面的是'+'並且'$'(輸入結束)也被添加到開始符號的后面

   FOLLOW(E) ={+,$}

FOLLOW(T),在三個產生式的右邊

   E-> E+T   E->T  T->T*F
   FOLLOW(T)={*} U FOLLOW(E)={*,+,$}

FOLLOW(F),它在兩個產生式的右邊

   T->T*F  T->F
   FOLLOW(F)=FOLLOW(T)={*,+,$}

如果你正在做這個練習來計算 LL(1) 解析表,那么首先消除左遞歸並繼續。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM