編譯原理 第四章 語法分析(自上而下分析)

2021-08-19 07:32:25 字數 578 閱讀 5570

一、感受及總結

語法分析是編譯過程的核心部分,語言的語法結構是用上下文無關描述的。因為自上而下分析可能會存在兩大問題,左遞迴和回溯,所以產生了消除左遞迴和克服回溯的方法----ll(1)分析法。使用ll(1)分析法要涉及first集和follow集,這是重點。當乙個文法滿足ll(1)條件時,就可以構造遞迴下降分析器,**分析程式是另一種使用一張分析表和乙個棧實現ll(1)分析的有效方法。其中構造分析表是重點。

感覺first集和follow集的概念挺難理解,求first集還行,但是求follow集有點難,**分析程式還挺容易理解,只是構造過程有點複雜,整個這章的內容可以用一道題來串聯起來,給出乙個文法,判斷是否是ll(1)文法,並給出**分析表。

二、課後練習

編譯原理第四章 語法分析(自上而下)

語法分析是編譯過程的核心部分,它的主要作用是根據單詞找出符合語法規則的句子。自上而下分析的主旨是,對任何乙個輸入串,試圖用一切可能的辦法,從文法的開始符號 根節點 出發,根據文法自上而下地為輸入串建立一棵語法樹,即為輸入串尋找乙個最左推導。本質上是一種試探過程,是反覆使用不同產生式謀求匹配輸入串的過...

編譯原理第四章 語法分析 自上而下分析

語法分析分為兩部分 自上而下的推導,和自下而上的規約。第四章講述的是自上而下的推導,主要內容包括文法的改造,ll分析和lr分析。語法分析是編譯過程的核心部分,它的任務是在詞法分析識別出單詞符號串的基礎上,分析並判定程式的語法結構是否符合語法規範。它的基本思想是為輸入串尋找乙個最左推導,是乙個反覆使用...

第四章 語法分析 自上而下分析

為了判斷乙個輸入串是否符合語法規則,有自上而下的的分析,即從文法的起始符出發進行句子的推導。也有自下而上的規約,即從句子本身出發,進行歸約,看能否把句子規約為到起始符。這一章主要講述的是自上而下的推導。但是乙個文法可能會存在左遞迴,回溯,虛假匹配等等的問題,就會影響推導的效率,浪費大量的精力與時間,...