詞法分析器制作與應用
設計思想
(1)程序主體結構部分:
說明部分
%%
規則部分
%%
輔助程序部分
(2)主體結構的說明
在這里說明部分告訴我們使用的LETTER,DIGIT, IDENT(標識符,通常定義為字母開頭的字母數字串)和STR(字符串常量,通常定義為雙引號括起來的一串字符)是什么意思.這部分也可以包含一些初始化代碼.例如用#include來使用標準的頭文件和前向說明(forward ,references).這些代碼應該再標記"%{"和"%}"之間 規則部分> 可以包括任何你想用來分析的代碼 我們這里包括了忽略所有注釋中字符的功能,傳送ID名稱和字符串常量內容到主調函數和main函數的功能.
(3)實現原理
程序中先判斷這個句語句中每個單元為關鍵字、常數、運算符、界符,對與不同的單詞符號給出不同編碼形式的編碼,用以區分之。
PL/0語言的EBNF表示
<常量定義>::=<標識符>=<無符號整數>
<標識符>::=<字母>={<字母>|<數字>}
<加法運算符>::=+|-
<乘法運算符>::=*|/
<關系運算符>::==|#|<|<=|>|>=
<字母>::=a|b|…|X|Y|Z
<數字>::=0|1|2|…|8|9
標簽:
分
LETTER
DIGIT
程序
上傳時間:
2015-11-04
上傳用戶:zhengzg