第十次作業 消除左遞迴

2022-08-28 23:54:23 字數 2658 閱讀 6700

1.將以下文法消除左遞迴,求first集、follow集,並分析符號串 i*i+i  

e -> e+t | t

t -> t*f | f

f -> (e) | i

消除左遞迴:

e->te'

e'->+te'|ε

t->ft'

t'->*ft'|ε

f->(e) | i

first集:

first((e))=

first(i)=

first(ε)=

first(*ft')=

first(ft')=

first(+te')=

first(te')=

follow集:

follow(e)=

follow(e')=

follow(t)=

follow(t')=

follow(f)=

select集:

select(e->te')=first(te')=

select(e'->+te')=first(+te')=

select(e'->ε)=first(ε)- u follow(e')

select(t->ft')=first(ft')=

select(t'->*ft')=first(*ft')=

select(t'->ε)=first(ε)- u follow(t')

select(f->(e) )=first((e))=

select(f->i)=first(i)=

分析符號串 i*i+i

2.p101練習7(2)(3)文法改寫,並分別求first集、follow集,和select集

題目:(2)a->aabe|a

b->bb|d

(3)s->aa|b

a->sb

b->ab

解:(2) a->aa'

a'->aa'be|ε

b->db'

b'->bb'|ε

first集:

first(aa')=

first(aa'be)=

first(db')=

first(bb')=

first(ε)=

follow集:

follow(a)=

follow(a')=

follow(b)=

follow(b')=

select集:

select(a->aa')=first(aa')=

select(a'->aa'be)=first(aa'be)=

select(b->db')=first(db')=

select(b'->bb')=first(bb')=

select(a'->ε)=first(ε)- u follow(a')

select(b'->ε)=first(ε)- u follow(b')

(3)先將a、b代入得:s->saba|b

s->bs'

s'->abas'

first集:

first(abas')=

first(bs')=

follow集:

follow(s)=

follow(s')=

select集:

select(s->bs')=first(bs')=

select(s'->abas')=first(abas')=

求以下文法的first集、follow集和select集。

(1)s->ap

a->a |ε

a->ca

a->aa

first集:

first(a)=

first(ap)=

first(a)=

first(ε)=

first(ca)=

first(aa)=

follow集:

follow(s)=

follow(a)=

select集:

select(s->ap)=first(ap)=

select(a->a)=first(a)=

select(a->ε)=first(ε)- u follow(a)

select(a->ca)=first(ca)=

select(a->aa)=first(aa)=

(2)s->ap

s->bq

a->a

a->ca

b->b

b->db

first集:

first(b)=

first(a)=

first(ap)=

first(bq)=

first(a)=

first(ca)=

first(b)=

first(db)=

follow集:

follow(s)=

follow(a)=

follow(b)=

select集:

select(s->ap)=first(ap)=

select(s->bq)=first(bq)=

select(a->a)=first(a)=

select(a->ca)=first(ca)=

select(b->b)=first(b)=

select(b->db)=first(db)=

第十次作業 消除左遞迴

1.將以下文法消除左遞迴,求first集 follow集,select集,並分析符號串 i i i e e t t t t f f f e i 消除左遞迴 e te e te t ft t ft f e i first集 first te first te first first ft first ...

第十次作業

linux網路服務 osi七層模型 物理層 傳輸介質,組網 資料鏈路層 mac位址定址,資料成幀,資料檢測,重發apr 網路層 將網路位址轉化為實體地址,網路位址定址,路由 ip協議 傳輸層 提供端對端的資料交換,連線,埠 會話層 提供點對點的連線 表示層 資料格式化 應用層 應用程式,服務 tcp...

第十次作業

1.將以下文法消除左遞迴,分析符號串 i i i e e t t t t f f f e i 解 文法改寫 e te e te t ft t ft f e i first集 first e first e first t first t first f follow集 follow e follow...