freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

編譯原理課程設(shè)計(jì)--語法分析器-在線瀏覽

2025-03-02 17:29本頁面
  

【正文】 a_op op。 ttype typ。 a_bexp relexp。 a_stm_list stens。 a_dec decl。 a_var_list vartable。 a_extension exten。 a_pos pos。}。 a_vardec vardeclare。 }。 a_dec_list dectable。4) 變量聲明表數(shù)據(jù)結(jié)構(gòu)定義struct a_dec_list_ { a_dec head。}。 a_pos pos。}。 a_var_list tail。7) 語句表數(shù)據(jù)結(jié)構(gòu)定義struct a_stm_list_ { a_stm head。}。 a_pos pos。 a_exp exp。//賦值語句:var = exp。 a_stm s1。 } iff。 struct a_while_stm_ { a_bexp b。 } whilee。 a_stm_list seq。 } stm。9) 算數(shù)表達(dá)式數(shù)據(jù)結(jié)構(gòu)定義struct a_exp_ { enum {A_varExp, A_intExp, A_realExp, A_opExp} kind。 union { struct { a_op op。 a_exp right。 //二元運(yùn)算表達(dá)式:left op right a_id var。 //整型數(shù)表達(dá)式 double fval。}。 struct { a_bop bop。 a_exp right。}。 string val。12) 類型數(shù)據(jù)結(jié)構(gòu)定義typedef enum{T_int, T_real} ttype。14) 二元算數(shù)運(yùn)算符數(shù)據(jù)結(jié)構(gòu)定義typedef enum {A_plusOp, A_minusOp, A_timesOp, A_divideOp} a_op。16) 各種指針類型定義typedef struct a_exp_ * a_exp。typedef struct a_id_ * a_id。typedef struct a_stm_list_ * a_stm_list。typedef struct a_vardec_ * a_vardec。typedef struct a_var_list_ * a_var_list。typedef struct a_extension_ * a_extension。最后詞法分析器要將這個(gè)詞法單元所對(duì)應(yīng)的終結(jié)符記號(hào)返回給語法分析器,使語法分析器知道現(xiàn)在已經(jīng)得到了一個(gè)終結(jié)符號(hào),然后采取相應(yīng)的動(dòng)作(移進(jìn)終結(jié)符或者歸約產(chǎn)生式)。2) 定義狀態(tài)此外為了能夠識(shí)別注釋并做相應(yīng)的處理,需要設(shè)置一個(gè)狀態(tài),以表示現(xiàn)在詞法分析是否處于注釋的范圍內(nèi),狀態(tài)定義如下:%s COMMENT當(dāng)遇到注釋開始標(biāo)志時(shí),詞法分析器就進(jìn)入注釋狀態(tài),遇到注釋結(jié)束標(biāo)志再切換回正常狀態(tài)。為此在遇到標(biāo)識(shí)符時(shí),我們需要自己開辟一塊內(nèi)存區(qū)域來存放標(biāo)識(shí)符的名字,將此刻yytext所指內(nèi)存區(qū)域的值復(fù)制一份到我們自己開辟的內(nèi)存區(qū)域。識(shí)別到其他詞法單元只需要根據(jù)詞法單元的類型進(jìn)行簡(jiǎn)單的賦值即可。2) 為該語言書寫的文法(含語義動(dòng)作)如下:progr : PROGRAM ID SEMICOLON EXTENSION {program = A_Prog(EM_tokPos,$2,$
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1