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

正文內(nèi)容

編譯原理報(bào)告(9)(完整版)

  

【正文】 ointer++] = 39。 ) { pWAR_psyn = 21。 } source_buffer_pointer 。 temp_ch = source_buffer[source_buffer_pointer++]。 source_buffer_pointer。 temp_ch = source_buffer[source_buffer_pointer++]。endif // WORD_ANALY_H_INCLUDED:includeincludeincludeincludeWORD_ANALY_RESULT * WordAnaly::scanner( char * source_buffer){ //字符 char token[33]。,’)’ }。,39。,39。,39。結(jié)尾的源程序字符緩沖區(qū)//輸出它的詞法分析結(jié)果,就是一個(gè)二元組鏈表class WordAnaly{public: WordAnaly()=default。如果輸入了非法的數(shù)字,程序就會(huì)提示錯(cuò)誤。 char * rwtab[6] = {“begin”,”if”,”then”,”while”,”do”,”end”}。 if x0 then x:= 2 * x + 1 / 3 。 實(shí)驗(yàn)要求1. 待分析的簡(jiǎn)單語(yǔ)言的詞法(1) 關(guān)鍵字begin if then while do end所有的關(guān)鍵字都是小寫。2614(27*15)28/1603. 詞法分析程序的功能輸入:所給文法的源程序字符串。關(guān)鍵字作為特殊標(biāo)識(shí)符處理,把他們預(yù)先安排在一張表格中(成為關(guān)鍵字表),當(dāng)掃描程序識(shí)別出標(biāo)識(shí)符時(shí),查關(guān)鍵字表。同時(shí),我的詞法分析程序?qū)⑻幚淼慕Y(jié)果放在一個(gè)鏈表中,并且在程序結(jié)束后返回鏈條頭。} WORD_ANALY_RESULT。39。/39。\t39。:39。 //檢查字符是否是空白字符 inline int is_blank( char ch )。 pWAR_head = thisAllocMem()。 } temp_ch = source_buffer[source_buffer_pointer++]。 break。 break。 temp_ch = source_buffer[source_buffer_pointer++]。=39。 case 39。 token[token_pointer++] = 39。 temp_ch = source_buffer[source_buffer_pointer++]。 source_buffer_pointer。 break。 case 39。/39。: pWAR_psyn = 26。 token[0] = temp_ch。 token[1] = 39。\039。 pWAR_p = pWAR_q。 amp。 ch = 39。939。))。 WordAnaly * pWordAnaly = new WordAnaly()。 else if( resultsyn == 1) printf(Error\n)。此時(shí),我再輸入一些非法字符,看一看程序的處理能力。 b:=a+x end 輸出 success輸入 x:=a+b*c end 輸出 error 實(shí)驗(yàn)原理 (1) 主程序示意圖如圖 21所示。并且,由于本次實(shí)驗(yàn)所用的詞法分析函數(shù)就是在前面介紹的,而且前面也已經(jīng)展示了代碼,因此,下面我將僅展示我的語(yǔ)法分析函數(shù)的代碼。 //賦值語(yǔ)句分析 int statement()。}int GrammerAnaly::lrparser(){ if (thispWordAnalyResult == NULL) return 0。 } } else { printf(缺少begin\n)。 if (thisexpression() == 0) return 0。}int GrammerAnaly::term(){ if (thisfactor() == 0) return 0。 } else { printf(缺少39。 int p = 0。39。1. 測(cè)試一個(gè)不加’end’的源程序代碼。直到上機(jī)的時(shí)候,我才發(fā)現(xiàn),原來在書本上深?yuàn)W的知識(shí),實(shí)踐起來居然會(huì)那么簡(jiǎn)單。因此我打算等這段時(shí)間考試課設(shè)都忙完了以后去深入學(xué)習(xí)一下這兩個(gè)工具的。在接下來的學(xué)習(xí)生活中,我一定會(huì)改正這些錯(cuò)誤,讓自己的學(xué)習(xí)更上一層樓。比如全局變量太亂不好管理、詞法分析程序與語(yǔ)法分析程序直接不好做銜接、如何檢測(cè)程序中的錯(cuò)誤等等。并且,在實(shí)現(xiàn)詞法分析與語(yǔ)法分析程序的過程中,我深切感受到了規(guī)格化的重要性。圖 211 自編用例2運(yùn)行結(jié)果3. 此時(shí)一段缺少右括號(hào)’)’的代碼圖 212 自編用例3運(yùn)行結(jié)果4. 測(cè)試一段輸入了錯(cuò)誤的標(biāo)識(shí)符的代碼圖 213 自編用例5運(yùn)行結(jié)果由上面的運(yùn)行結(jié)果可以看出,對(duì)一部分程序源代碼,我的語(yǔ)法分析程序可以識(shí)別正確的表達(dá)式,并且找出錯(cuò)誤的表達(dá)式中出錯(cuò)的地方。 //獲取此法分析結(jié)果 result = pWordAnalyscanner(buffer)。 WORD_ANALY_RESULT * result。錯(cuò)誤\n)。 if (thisfactor() == 0) return 0。 return 0。}int GrammerAnaly::word_string(){ if (thisstatement() == 0) return 0。 if (thisword_string() == 0) return 0。 //項(xiàng)分析 int term()。 int grammer_analy(WORD_ANALY_RESULT * head) { thispWordAnalyResult = head。(3) 語(yǔ)句串分析過程示意圖如所示。2 實(shí)驗(yàn)二 語(yǔ)法分析 實(shí)驗(yàn)?zāi)康木幹埔粋€(gè)遞歸下降分析程序,實(shí)現(xiàn)對(duì)詞法分析程序所提供的單詞序列的語(yǔ)法檢查和結(jié)構(gòu)分析。 res
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1