編譯原理(2) 文法推導

2021-07-24 10:14:32 字數 940 閱讀 8595

這一篇講一講形式文法的推導,學習是乙個持之以恆的過程,尤其是像我這種初學者了。

注:這一篇的例子來自於統計自然語言處理這本書

形式文法的推導比較好理解,即按文法g中的規則p推導

的符號串,且b->c是p中的乙個產生式,那麼,abc

adc。

1、的傳遞閉包,即(n∪

σ)*上的符號串xi到xi+1至少經過一步推導或派生

2、的自反或傳遞閉包,即(n∪

σ)*上的符號串xi到xi+1至少經過n(n≥0)步推導或派生

3、如果已經明確某個推導是由給定文法g所產生的,那麼符號中的g可以省略

舉個栗子:

給定文法g(s)的一組規則:

s->pnp(這裡的s表示文法的初始符start,而不是句子。)

np->nn | np aux np                            p->關於         (解釋:np改寫為nn或者np aux np,p改寫為」關於「)

nn->魯迅 | 文章                                      aux->的         (解釋:nn改寫為」魯迅「或者」文章「,aux改寫為」的「)

於是根據這一組文法規則,」關於魯迅的文章「的最左推導為 s⇒

p np⇒

關於 np⇒

關於np aux np⇒

關於nn aux np⇒

關於魯迅 aux np⇒

關於魯迅的 np ⇒

關於魯迅的 nn⇒

關於魯迅的文章

同理,字串」關於魯迅的文章「的最右推導為 s⇒

p np⇒

p np aux np⇒

p np aux nn⇒

p np aux 文章⇒

p np 的文章⇒

p nn的文章 ⇒

p 魯迅的文章⇒

關於魯迅的文章

編譯原理01 文法

文法編譯就是高階語言翻譯成低階語言的過程,翻譯完全部 後執行。解釋也是翻譯的過程,但和編譯不同,解釋時逐句翻譯,一邊解釋一邊執行。程式語言是乙個記號系統。可以看作是一定字符集 字母表 上的字串,包括語法和語義兩部分。文法是描述語言的語法結構的形式規則。young men like pop music...

編譯原理之文法推導

已知文法g 表示式 項 表示式 項 項 因子 項 因子 因子 表示式 i 試給出下列表示式的推導。1 i 2 i 3 i i 4 i i i 5 i i i 6 i i i 7 i i i 8 i i 9 i i i i 10 i i i 3.演算法思想 描述的是大概的過程,具體實現的細節見 注釋。...

編譯原理筆記4 文法與語言

1.字母表與符號串 2.連線 乘積 運算 串集間的乘積 串集的方冪 串集的自身乘積 例如 a b 則ab 1 a 0 2 字母表a的 n次方冪是字母表 a上所有長度為 n的串集。3.字母表的閉包與正閉包 1 字母表a 的閉包 a 2 字母表a 的正閉包 a 除了空串的所有次方冪和 4.文法 文法是描...