嵌軟第一學(xué)期萬海編譯原理課件analysis_第1頁
嵌軟第一學(xué)期萬海編譯原理課件analysis_第2頁
嵌軟第一學(xué)期萬海編譯原理課件analysis_第3頁
嵌軟第一學(xué)期萬海編譯原理課件analysis_第4頁
嵌軟第一學(xué)期萬海編譯原理課件analysis_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

PrinciplesofCompilerLecture5 ysisLecturer:HaiNotethatmostoftheseslideswerecreatedDr.Zhong-meiSHU(DepartmentofComputerScience)Dr.HanLIN(DepartmentofComputerScience)CourseCourse語法分析的任ThepipebetweenaparserandaMethodinvocation(procedurecall)Logicalvs.physical Parsetree,derivation,andreduction語法分析的任語法分析要解決的問題包括token)例如:同樣一個數(shù)字,在程序中可能是一個加數(shù),可能是數(shù)的下標,可能是循環(huán)的次數(shù),可能是某個函數(shù)的參數(shù)檢查語句或程序是否符合程序語言的問題的進一步明要解決這些問題 須先明確一個程序包括哪些語法成分這些語法成分以什么方式構(gòu)成程因為我們要用計算機來分析,所以需要嚴格精確的借助形式化的思 思比如對于含else的if語句,其構(gòu)成方式如下if(expr)stmtelseif語句是語句的stmt→if(expr)stmtelseParsingTop-downHowtochooseauniqueproductioninmultiplecandidates?Bottom-upHowtofindthehandleinasententialformTop-DownAmotivatingTop-Down|^|array[simple]of||numdotdotarray[1..10]ofParsingProcessParsingProcess[]Match

[]Match

[]Derivewith"simplenumdotdot

[]Match

[]Match

[]Match

[]Match

[]Match

[]

Derivewith"type

[]

Derivewith"simple

[]MatchandAccept

[]一個上下文無關(guān)文法(CFG)包括四終端符號(terminal)的集合非終端符號(nonterminal)的集合若干以下形式的產(chǎn)生式X其 XN且YiTN一些為了方便的規(guī)多個形如A1A2Ak的產(chǎn)生式A1|2||例EEE|E*E|E|(E)|顯然對于上面的文法,id(idid)id*id都是符合文法定義的,而(id,id*+id都是不符合的Chomskyr3r3eAaBorAa,whereA,BNa{}.ApermittedifAisthestartsymbolanddoesnotappearontherightofanyproduction.2A,AN(1yContext-,,(N)*||can'tbe,unlessisthestartsymbolanddoesnotappearontherightofanyproduction.0,,(N)*TuringMachineUsefulinWhatlanguagesitcangenerateL0={anbn|nionofsomeprobleminWhatlanguagesitcannotgenerateL1={c|(a|b)*a,b,cionofsomeprobleminHowtosolvetheproblemL2={anbmcndm|n1mionofsomeprobleminHowtosolvetheproblem推例如EE(E)(EE)(idE)(id所有句子的集合,記為L(G)斷一個終端符號串x是討練用上下文無關(guān)文法定義下列語L{0n1n|n只含有0和1的回文只含有(和)的匹配括號最左推導(dǎo)和最右推例如例如文法的二義例:對于文法EEE|E*E|E|E|存在句子id+id*id,有兩種推文法的二義這兩種推導(dǎo)對應(yīng)兩棵不同的分因此這個文法是二義的文文文法二義性的消EEE|E*E|(E)|文法二義性的消文法二義性的消壞消息:有些文法的二義性是無法消L{anbncmdm|n,m}{anbmcmdn|n,mCFGCFG.)文法二義性的判的.(證明超出課程范圍)上下文無關(guān)文法vs.正則表達正則表達式無法定義語FromNFAto

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論