E+T|E-T|TT->T*F|T/F|FF->(E)|i說明:優(yōu)先關系矩陣的構造過程:(1)=關系由產生式F">
實驗4算符優(yōu)先分析法

實驗4算符優(yōu)先分析法

ID:37671353

大?。?5.82 KB

頁數(shù):16頁

時間:2019-05-28

實驗4算符優(yōu)先分析法_第1頁
實驗4算符優(yōu)先分析法_第2頁
實驗4算符優(yōu)先分析法_第3頁
實驗4算符優(yōu)先分析法_第4頁
實驗4算符優(yōu)先分析法_第5頁
資源描述:

《實驗4算符優(yōu)先分析法》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫

1、.實驗名稱:實驗任務:對下述描述算符表達式的算符優(yōu)先文法G[E],給出算符優(yōu)先分析的實驗結果。實驗內容:有上下無關文法如下:E->E+T

2、E-T

3、TT->T*F

4、T/F

5、FF->(E)

6、i說明:優(yōu)先關系矩陣的構造過程:(1)=關系由產生式F->(E)知‘(’=‘)’FIRSTVT集及LASTVT集FIRSTVT(E)={+,-,*,/,(,i}FIRSTVT(F)={(,i}FIRSTVT(T)={*,/,(,i}LASTVT(E)={+,-,*,/,),i}LASTVT(F)={),i}LASTVT(T)={*,/,),i}(2)<關系+T則有:+

7、(T)-T則有:-關系E+則有:LASTVT(E)>+E-則有:LASTVT(E)>-T*則有:LASTVT(T)>*T/則有:LASTVT(T)>/E)則有:LASTVT(E)>)(4)請大家畫出優(yōu)先關系矩陣終結符之間的優(yōu)先關系是唯一的,所以該文法是算符優(yōu)先文法。程序的功能描述:程序由文件讀入字符串(以#結束),然后進行算符優(yōu)先分析,分析過程中如有錯誤,則終止程序并報告錯誤位置,最終向屏幕輸出移近——規(guī)約過程。..(5)依據(jù)文法和

8、求出的相應FirstVT和LastVT集生成算符優(yōu)先分析表。算法描述如下:for每個形如P->X1X2…Xn的產生式dofori=1ton-1dobeginifXi和Xi+1都是終結符thenXi=Xi+1ifi<=n-2,Xi和Xi+2是終結符,但Xi+1為非終結符thenXi=Xi+2ifXi為終結符,Xi+1為非終結符thenforFirstVT中的每個元素adoXiXi+1end(6)構造總控程序算法描述如下:stackS;k=1;//符號棧S的使用深度..S[k]=‘#

9、’REPEAT把下一個輸入符號讀進a中;IfS[k]?VTthenj=kelsej=k-1;WhileS[j]>adoBeginRepeatQ=S[j];ifS[j-1]?VTthenj=j-1elsej=j-2untilS[j]

10、include"iostream.h"chardata[20][20];//算符優(yōu)先關系chars[100];//模擬符號棧scharlable[20];//文法終極符集charinput[100];//文法輸入符號串charstring[20][10];//用于輸入串的分析intk;chara;intj;charq;intr;//文法規(guī)則個數(shù)intr1;//轉化后文法規(guī)則個數(shù)charst[10][30];//用來存儲文法規(guī)則charfirst[10][10];//文法非終結符FIRSTVT集charlast[10][10];//文法非終結符LASTVT集intff

11、lag[10]={0};//標志第i個非終結符的FIRSTVT集是否已求出intlflag[10]={0};//標志第i個非終結符的LASTVT集是否已求出intdeal();//對輸入串的分析intzhongjie(charc);//判斷字符c是否是終極符intxiabiao(charc);//求字符c在算符優(yōu)先關系表中的下標voidout(intj,intk,char*s);//打印s棧voidfirstvt(charc);//求非終結符c的FIRSTVT集voidlastvt(charc);//求非終結符c的LASTVT集voidtable();//創(chuàng)建文法優(yōu)

12、先關系表voidmain(){inti,j,k=0;printf("請輸入文法規(guī)則數(shù):");scanf("%d",&r);printf("請輸入文法規(guī)則:");for(i=0;i

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現(xiàn)內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。