2009-03-25 9 views
1

私は、次の文法のためのパーサ構築しようとしている(ドラゴンブックEXを4.4.1 PG 231。。):ビル予測パーサと解析テーブル

S -> 0 S 1 | 0 1 

だから最初に私は文法を因数分解して得た左:

S -> 0 S' 
S' -> S 1 | 1 

と解析テーブルを作成するには、得られた:

 +-----------+---------+--------+ 
    |  0  | 1 | $ | 
-----+-----------+---------+--------+ 
    S | S -> 0 S' |   |  | 
-----+-----------+---------+--------+ 
    S' | S' -> S 1 | S' -> 1 |  | 
-----+---------------------+--------+ 

はそれがOK $(Eのすべてのエントリを持っていないです入力のnd)シンボル? この場合、予測パーサーはどのように解析を行いますか?

+0

--------------------------------- | 0 | 1 | $ | --------------------------------- S | S->0S'| | S-> empty | --------------------------------- S' | S'->S1| S'->1 | | --------------------------------- 

あなたはこのビデオを見ることができます。 "S ' - > 0S | 1"は "S' - > S1 | 1"でなければなりません。これはあなたのテーブルにも見られます。 – Dacto

答えて

1

YES、SおよびS'doは、空のシンボルを受け入れないので。

は考慮してください。

S->0S' 
S'->0S|1 
S-> empty 

あなたのテーブルは次のようになります。私は2番目の段落(5行目)にタイプミスがあると信じてhttp://www.youtube.com/watch?v=E4to0HuZh3Q

関連する問題