- 編譯方法、技術(shù)與實(shí)踐
- 許暢等編著
- 352字
- 2024-09-11 16:26:40
1.2.2 語法分析
語法分析是編譯的第二個(gè)步驟。語法分析器讀入詞法單元流,基于語言的語法規(guī)則推導(dǎo)并構(gòu)建語法分析樹,若輸入的詞法單元流在語法規(guī)則下能夠被推導(dǎo)并構(gòu)建為語法分析樹,則認(rèn)為該程序不包含語法錯(cuò)誤,語法分析器輸出語法分析樹,交予語義分析器進(jìn)行語義檢查。
例如,對(duì)于詞法分析獲得的詞法單元流:

其通過語法分析構(gòu)造的語法分析樹如下:

語法分析器分析得知,這條語句是一條賦值語句,首先聲明了變量i(VarDec),然后給i賦值為123+b*c。語法推導(dǎo)過程中,符號(hào)的歸約具有優(yōu)先級(jí),例如乘法的運(yùn)算優(yōu)先級(jí)高于加法,乘法應(yīng)當(dāng)在加法之前進(jìn)行計(jì)算,因此首先歸約b*c,然后歸約123+b*c。
在第2章中,我們將討論以下內(nèi)容:
●上下文無關(guān)文法,幾乎所有程序設(shè)計(jì)語言的語法規(guī)則都是通過上下文無關(guān)文法來定義的。
●自頂向下的語法分析算法。
●自底向上的語法分析算法。
推薦閱讀
- 外貿(mào)單證
- 客戶關(guān)系管理
- 水利工程CAD
- 智能倉儲(chǔ)環(huán)境監(jiān)控
- 西安外國語大學(xué)211翻譯碩士英語[專業(yè)碩士]歷年考研真題及詳解
- Hadoop+Spark大數(shù)據(jù)技術(shù)(微課版)
- Hadoop數(shù)據(jù)倉庫實(shí)戰(zhàn)
- 人工智能和深度學(xué)習(xí)導(dǎo)論
- 通信工程制圖與概預(yù)算
- 多維新媒體營銷
- 移動(dòng)音頻編碼丟幀隱藏技術(shù)與應(yīng)用
- 專精特新“小巨人”企業(yè)發(fā)展研究
- 編組站自動(dòng)控制系統(tǒng)維護(hù)
- 教師口語教程
- 姜明安《行政法與行政訴訟法》(第5版)【教材精講+考研真題解析】講義與視頻課程【40小時(shí)高清視頻】