本程序要求用戶在控制臺里輸入非終極符,終結符與產生式,然后對用戶輸入的文法進行分析,得出first集 與follow 集,并打印出預測分析表用戶決定是否繼續進行句型分析,如繼續則給出符號分析棧的實現,從而判斷剛輸入的句子是否為符合該文法的句子。
該程序遵循LL(1) 文法FIRST(A)的構造:是A的所有可能推導的開頭終結符或可能的ε FOLLOW(A)是所有句型中出現在緊接A之后的非終結符或“#” 預測分析程序 構造LL(1)分析表
ⅰ,構造文法中所有元素的FIRST和FOLLOW集合
ⅱ,對文法G的每個產生式A->α執行第三步和第四步
ⅲ,對每個終結符a∈FIRST(α),把A->α加至M[A,a]
ⅳ,若ε∈FIRST(α),則對任何b∈FOLLOW(A)把A->α加至M[A,b]中
ⅴ,把所有無定義的M[A,a]標上“出錯標志”
標簽:
程序
用戶
控制臺
輸入
上傳時間:
2013-12-27
上傳用戶:jackgao