編譯原理 詞法,語法,語義分析

2021-10-09 23:18:17 字數 689 閱讀 9426

詞法分析的主要任務:

從左向右逐行掃瞄源程式的字元,識別出各個單詞,確定單詞的型別

將識別出的單詞轉換成統一的機內表示——詞法單元(token)形式

token:《種別碼,屬性值》

單詞型別

種別種別碼

關鍵字program.if、 else、then、…

一詞一碼

識別符號變數名、陣列名、記錄名、過程名、…

多詞一碼

常量整型、浮點型、字元型、布林型、…

一型一碼

運算子算術(± * │++ – )關係(> <== != >= <= )邏輯(&|~)

一詞一碼或一型一碼

界限符; ()= …

一詞一碼

語法分析的主要任務:

語法分析器(parser)從詞法分析器輸出的token序中識別出各類短語,並構造語法分析樹(parse tree)

語義分析的主要任務:

1.收集識別符號的屬性資訊:

種屬,型別,儲存長度,儲存位置,值,作用域,引數和返回資訊

2.語義檢查

詞法 語法 語義

詞法分析階段是編譯過程的第乙個階段,這個階段的任務是對源程式從前到後 從左到右 住個字元的掃瞄,從中識別出乙個個 單詞 符號。單詞 符號是程式語言的基本語法單位,如關鍵字 保留字 識別符號 常數 運算子 分隔符等。詞法分析程式輸出的 單詞 常以二元組的方式輸出,即單詞種別和單詞自身的值。其任務是在詞...

詞法 語法 語義分析實驗

一 詞法分析 include include include using namespace std char rwtab 6 syn 單詞符號的種別碼 token 單詞符號的字串 sum 整數 char token 16 int sum,syn char program 110 ch 輸入程式,單...

編譯原理方面 詞法語法語義分析器

實驗要求 要求設計出並實現乙個一遍掃瞄的詞法語法語義分析程式,將多條簡單賦值語句翻譯成三位址 要求有一定的出錯提示和錯誤恢復功能。一 待分析的簡單語言的語法 1 程式 begin 語句串 end 2 語句串 語句 3 語句 賦值語句 4 賦值語句 id 表示式 5 表示式 項 6 項 因子 7 因子...