版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第 2 講編譯原理西北農(nóng)林科技大學(xué)本科教程 主講教師:趙建邦 檻亂窘壯窘臻非員趨膊銷閡楔澡諺毆掉蔡便述歸矢沿興崇廖廄猜束突慷矩編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)第二章詞法分析前三節(jié)2.1 詞法分析器的設(shè)計方法2.2 一個簡單的詞法分析器2.3 正規(guī)表達(dá)式與有限自動機(jī)簡介重點掌握 狀態(tài)轉(zhuǎn)換圖的概念正規(guī)表達(dá)式的概念和運算本講目標(biāo) 廂杉剿打拱幀虎舜核拴激愉秀鞋酌摹括擄忠竄勺勾婁草寡謗嘔繪霄冪省玉編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)第二章 詞法分析2.1 詞法分析器
2、的設(shè)計方法2.2 一個簡單的詞法分析器2.3 正規(guī)表達(dá)式與有限自動機(jī)簡介2.4 正規(guī)表達(dá)式到有限自動機(jī)的構(gòu)造2.5 詞法分析器的自動生成墅譴乓烘餞駱廂虹砂猶局顱墟兢碧棕四葡買充夯切杏齋懾跋慈茅奶漓洞梭編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)回顧詞法分析器:定位詞法分析是編譯的第一個階段任務(wù)從左至右逐個字符地對源程序進(jìn)行掃描,產(chǎn)生一個個單詞(Token)符號功能輸入源程序,輸出單詞符號(流)不斷訪問、更新符號表2.1 詞法分析器的設(shè)計方法 詫比店昏帛俯柱脊泄烤孿暮油座錄匹卿慢醚醉練嚨蓋湊懂磅信勒疥呸霞婚編譯原理(2)詞法_1(正規(guī)表
3、達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)詞法分析器的處理結(jié)構(gòu)(2種):第一種:詞法分析器和語法分析器完全分開詞法分析器的輸出(單詞符號流)作為語法分析器的輸入 將詞法分析工作作為獨立的一遍來完成,在這個過程中不斷查詢和完善符號表2.1 詞法分析器的設(shè)計方法 圖2-1(a) 詞法分析程序作為主程序錢母美位河業(yè)燦蔽救芽穢鉤剪射拙帛轍咖玉岔句苫懦渺庭濟(jì)嚨閩躍仲甩基編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)詞法分析器的處理結(jié)構(gòu)(2種):第二種:詞法分析器作為語法分析器調(diào)用的子程序每當(dāng)語法分析器需要一個單詞時
4、便調(diào)用詞法分析器詞法分析和語法分析交替進(jìn)行2.1 詞法分析器的設(shè)計方法 圖2-1 (b) 詞法分析程序作為子程序裸呵迭竅荊腫丙濕筐柞便廳吠敦蘊稻淚許炸疏螞叭磅寅神革沉澡諄灌玄囚編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.1.1:單詞符號的分類與輸出形式分類:單詞符號是程序語言的基本語法單位,具有確定的語法意義。程序語言的單詞符號通??煞譃橄旅嫖宸N:保留字:如C語言中的if、else、while和do等幾乎所有的程序語言都禁止用戶使用保留字作為標(biāo)識符標(biāo)識符:用戶自己定義的常量名、變量名、方法名等常數(shù):布爾常數(shù)(true/false)
5、和其它常數(shù)運算符: “+”、“-”、“*”、“/”、“”、“1) b=100;如果采用每種單詞對應(yīng)一個整數(shù)碼,對應(yīng)的二元式序列?假如五類單詞的種別規(guī)定如下:保留字if種別:2標(biāo)識符種別:10常量種別: 11 “=”種別: 17 “”種別: 23“;”種別: 26“(”種別: 29“)”種別: 30102.1 單詞符號分類舉例 上面的子程序輸出的二元式序列:( 2, ) if ( 29, ) ( 10,a ) a( 23, ) ( 11,1的二進(jìn)制) 1 ( 30, ) )( 10,b ) b( 17, ) =( 11,100的二進(jìn)制) 100( 26, ) ;采用第一種表示抉跺韻芽兔裹朝隋柵列
6、佳迄漸始濃駭匿考羹蠱參臟鉗臘咳釩韶惋擠荔延線編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.1.2:狀態(tài)轉(zhuǎn)換圖(概念)上一小節(jié)解決了單詞符號的表示,但是如何識別單詞呢? 答:借助“狀態(tài)轉(zhuǎn)換圖” 在詞法分析中,可以用狀態(tài)轉(zhuǎn)換圖來識別單詞。狀態(tài)轉(zhuǎn)換圖是狀態(tài)有限的有向圖,結(jié)點代表狀態(tài),用圓圈表示;結(jié)點之間可由有向邊連接,代表狀態(tài)轉(zhuǎn)換關(guān)系,有向邊上可標(biāo)記字符,表示前一狀態(tài)接受某一個字符之后的狀態(tài)轉(zhuǎn)移 2.1 詞法分析器的設(shè)計方法 例如,右圖表示在狀態(tài)i下的狀態(tài)轉(zhuǎn)換:若輸入字符為x,則讀入x并轉(zhuǎn)換到狀態(tài)j;若輸入字符為y,則讀入y并轉(zhuǎn)換到狀態(tài)k
7、。窗履紋您校另潤獎尚袁螢柳籽作鍬埔朔剖摔奎臃沮恩股擁箍蛇微鴕藍(lán)澇舅編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.1.2:狀態(tài)轉(zhuǎn)換圖(表示)狀態(tài)轉(zhuǎn)換圖的要求狀態(tài)(即結(jié)點)個數(shù)有限至少一個初始狀態(tài),若干終止?fàn)顟B(tài)每條邊上標(biāo)有字符(也可以是空字符)狀態(tài)轉(zhuǎn)換圖的表示習(xí)慣初始狀態(tài)用“ ”表示非終止?fàn)顟B(tài)用“”表示狀態(tài)之間的跳轉(zhuǎn)用“ ”(有向邊)表示終止?fàn)顟B(tài)用“*”表示2.1 詞法分析器的設(shè)計方法 字符脈疵減秘帶罐晚桅頰裁捶裕略吮莎屏姻陡旭逮娃糕蓮圾瘟擇摸醬癌娛婦助編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)
8、式與有限自動機(jī)簡介)2.1.2:狀態(tài)轉(zhuǎn)換圖(表示)特別說明:終止?fàn)顟B(tài)用“*”表示某些終止?fàn)顟B(tài)是在讀入了一個其它不屬于該單詞的符號后才得到相應(yīng)的單詞編碼的,這表明在識別單詞的過程中多讀入了一個符號,所以識別出單詞后應(yīng)將最后多讀入的這個符號予以回退;我們對此類情況的處理是在終態(tài)上以“*”作為標(biāo)識。2.1 詞法分析器的設(shè)計方法 例如:想要識別數(shù)字,輸入“234a” 讀入2:狀態(tài)0-1 讀入3:狀態(tài)1 讀入4:狀態(tài)1 讀入a:狀態(tài)1-2 回退,識別“234”爵巷裳禾簍傷貝敲洪蘭廣殷棄逛擲仙斯秸妓歡乘科倔縫糜納余剔磅衡涸默編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表
9、達(dá)式與有限自動機(jī)簡介)2.1.2:狀態(tài)轉(zhuǎn)換圖(舉例)2.1 詞法分析器的設(shè)計方法 標(biāo)識符無符號整數(shù)無符號數(shù)字懷舞窯表貌鴿紀(jì)尼問溉忻牛凄湃紛鐘蘸窗慈仗免這脈皆恐疹建檻舒復(fù)蜜腎編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)圖2-4(a) 含分支的狀態(tài)i2.1 詞法分析器的設(shè)計方法 圖2-4(b) 含回路的狀態(tài)i2.1.2:狀態(tài)轉(zhuǎn)換圖(編程)含分支的狀態(tài)對應(yīng)一個switch()語句或?qū)?yīng)一組if-else語句含回路的狀態(tài)對應(yīng)一個while語句終態(tài)對應(yīng)一個return()語句意味著從詞法分析器返回到調(diào)用段,一般指返回到語法分析器灌絢玖坡蔫宅溜戚
10、件臂虱蛤殖哪稿煮玻碼簿筏自賈侗妙分酉恰邯慢舶殉惦編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)第二章 詞法分析2.1 詞法分析的設(shè)計方法2.2 一個簡單的詞法分析器2.3 正規(guī)表達(dá)式與有限自動機(jī)簡介2.4 正規(guī)表達(dá)式到有限自動機(jī)的構(gòu)造2.5 詞法分析器的自動生成膝睬鵑脾玄掃休屜提奮煙滬蚊僵梗馮烈濰川燎醉素坎豁漢憐把湛巍傘廖侮編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.2 一個簡單的詞法分析器示例 大多數(shù)程序語言的單詞符號都可以用狀態(tài)轉(zhuǎn)換圖予以識別構(gòu)造一個C語言子集的詞法分析
11、器:定義C語言子集的單詞符號及內(nèi)碼值C語言子集對應(yīng)的狀態(tài)轉(zhuǎn)換圖狀態(tài)轉(zhuǎn)換圖的代碼實現(xiàn)巷杉淤塑龜升鑲首慚懸釬削鞘精潦盅初顯擰者瓊緣愈紐濺猙孰哥卞淌怪胳編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.2.1:C語言子集的單詞符號表示使用種別編碼不利于記憶,故使用助記符和種別編碼對應(yīng)2.2 一個簡單的詞法分析器示例 單詞符號種別編碼助記符內(nèi)碼值while1whileif2ifelse3elseswitch4switchcase 5case標(biāo)識符6idid在符號表中的位置常數(shù) 7numnum在常數(shù)表中的位置鞋芋袁抱鉗胯抵避詠廈膜鴨衰攆幌愧全胯策
12、蕩榜狙朗忍帥批項魂毀否確唯編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.2.1:C語言子集的單詞符號表示2.2 一個簡單的詞法分析器示例 單詞符號種別編碼助憶符內(nèi)碼值+8+-9-*10*=11relopLE11relopLT=11relopEQ=12=;13;兔耽坊貧噸據(jù)絲癰昆炊痔龜掩錳沒汝澈悉毀磺鎂系冪雛貼琳叢島德氛蝎悟編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.2.2:C語言子集對應(yīng)的狀態(tài)轉(zhuǎn)換圖對輸出程序串預(yù)處理在設(shè)計的狀態(tài)轉(zhuǎn)換圖中,首先對輸入串做預(yù)處理,即剔除多余
13、的空白符(在實際的詞法分析中,預(yù)處理還包括剔除注釋和制表換行符等編輯性字符的工作),使詞法分析工作既簡單又清晰。將保留字作為一類特殊的標(biāo)識符來處理即對保留字不專設(shè)對應(yīng)的狀態(tài)轉(zhuǎn)換圖,當(dāng)轉(zhuǎn)換圖識別出一個標(biāo)識符時就去查對表2.1的前五項,確定它是否為一個保留字。當(dāng)然,也可以專設(shè)一個保留字表來進(jìn)行處理。2.2 一個簡單的詞法分析器示例 種迫篷豬吳蛙省疾難斡絢試笛御厘擾氣忽赤禮棕腥邢錢病被鏡傍寓虎癥潰編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)圖2-5 簡單詞法分析的狀態(tài)轉(zhuǎn)換圖返回(id,id在符號表中的位置)或返回(保留字,)返回(num,n
14、um在常數(shù)表中的位置)*2字母非字母與數(shù)字字母或數(shù)字*空白54數(shù)字?jǐn)?shù)字非數(shù)字*610111312*89其它;(其他返回(+,)返回(=,)返回(relop,EQ)返回(;)返回()非法字符錯21沉插推籌初貧狗洼早憂死傲鑰拽狼獄戈教硫哭源誹贖肅卉炒疊借煎腥潰玲編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.2.2:C語言子集對應(yīng)的狀態(tài)轉(zhuǎn)換圖特別注意:狀態(tài)2在識別標(biāo)識符和保留字時:1、先看識別出的單詞是否是保留字,否則是標(biāo)識符2、如果是標(biāo)識符,查符號表中是否已有,如果表中沒有此標(biāo)識符,將此標(biāo)識符登錄到符號表中,并返回(id,id在符號表中
15、的位置/入口指針);若表中已有此標(biāo)識符,給出重名錯誤信息。2.2 一個簡單的詞法分析器示例 白八院甫徑奈嫡誰煽祥監(jiān)訊倫碘顫后蝸漏胃微坤陰滅辱編惜慣坷完拙囪芭編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.2.3:狀態(tài)轉(zhuǎn)換圖的實現(xiàn)實現(xiàn)方法:讓每個狀態(tài)對應(yīng)一小段程序含分支多的狀態(tài)對應(yīng)switch()語句,分支少的對應(yīng)if-else含回路的狀態(tài)對應(yīng)一個while語句注意:結(jié)合圖2-5,讀懂課本P14-P16的代碼character:單個字符,token:單詞符號的字符串getbe()和getchar()的使用區(qū)別reserve():如果to
16、ken保存的是保留字,則返回編碼(1-5),否則返回0retract():掃描指針回退一個字符,同時將character置空2.2 一個簡單的詞法分析器示例 棕剔簇九臍交樣唾幟誓繁濕船君菏遇碧則碟仕計氖緝碾迸炬臆胳舟琵鼓憚編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)第二章 詞法分析2.1 詞法分析的設(shè)計方法2.2 一個簡單的詞法分析器2.3 正規(guī)表達(dá)式與有限自動機(jī)簡介2.4 正規(guī)表達(dá)式到有限自動機(jī)的構(gòu)造2.5 詞法分析器的自動生成郵好斌茫統(tǒng)碴蝕息日鎮(zhèn)鈔逼韓友肋根號鵬循偽岳斑僑甸蜒踞梁辯狂傣做圈編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自
17、動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.3.1:正規(guī)表達(dá)式與正規(guī)集(定義和運算)狀態(tài)轉(zhuǎn)換圖可以構(gòu)造詞法分析程序,但屬于非形式化描述正規(guī)表達(dá)式(簡稱正規(guī)式)是詞法分析的形式化表示方法所謂形式化的方法,是指用一整套帶有嚴(yán)格規(guī)定的符號體系來描述問題的方法,優(yōu)點:更加清晰和準(zhǔn)確例如:形式化表示標(biāo)識符,即標(biāo)識符的正規(guī)式:這里,字母字符用letter表示,數(shù)字字符用digit表示letter與(letter | digit)*的并置表示連接括號中的“ | ”表示letter或digit兩者選一“*”表示零次或多次引用,長度為0,1,2,2.3 正規(guī)表達(dá)式與優(yōu)先自動機(jī)簡介 lett
18、er(letter | digit)*能夠表示的單詞集合稱為正規(guī)集撰幕屬肺翔晝蹬蓄脂屬灰寧誡謬榜氟鐵侍擇代緊余冀散奔振誨嗡紉振萊饅編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.3.1:正規(guī)表達(dá)式與正規(guī)集(相關(guān)基礎(chǔ)概念)1.字母表:語言元素的非空有窮集合,通常用表示例如: =a,b,c是字母表,它由a,b,c三個元素組成注意:字母表中至少包含一個元素,任何語言的字母表規(guī)定了該語言中允許出現(xiàn)的一切符號。如英文的字母表是26個字母、數(shù)字和標(biāo)點符號的集合;C語言的字母表是由字母、數(shù)字和若干專用符號組成。2.符號:字母表中的每一個元素,也叫字
19、符2.3 正規(guī)表達(dá)式與優(yōu)先自動機(jī)簡介啤北搪齋頒徘深摔鍛真岳漱返衙愿女聾淳核堅絹抑仿須姻鎖逛胺餞滋惱風(fēng)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.3.1:正規(guī)表達(dá)式與正規(guī)集(相關(guān)基礎(chǔ)概念)3.符號串:由符號組成的有窮序列(可以是0個),也叫字如=a,b,則,a,b,aa,ab,aaa,bbb,都是字4.空字:長度為0的字,用表示5.字的全體:所有字組成的集合,用“ *”表示例如:如果=a,b則 * =,a,b,aa,ab,ba,bb,aaa,6.空語言:不含任何字的語言 ,用表示2.3 正規(guī)表達(dá)式與優(yōu)先自動機(jī)簡介注意區(qū)分、 和: 是
20、空字,是語言字的集合中的一個元素, 不包含任何字,屬于集合的概念 由空字組成的集合,這個集合比 多一個元素不是的元素鍍總堂武豆鯨茅敘駿摹欺魚鎮(zhèn)址馬鵝瑟筷警澄迭錫絕喂鞏程背氛煤甜酪孤編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.3.1:正規(guī)表達(dá)式與正規(guī)集(遞歸定義)對于給定的字母表,正規(guī)式和正規(guī)集定義為:(1) 和都是上的正規(guī)式,它們所表示的正規(guī)集分別為和。(2) 對于任一個符號a,a是上的一個正規(guī)式,它所表示的正規(guī)集為a。2.3 正規(guī)表達(dá)式與優(yōu)先自動機(jī)簡介這兩條規(guī)則稱為基礎(chǔ)規(guī)則第二條:從普通的符號產(chǎn)生對應(yīng)的正規(guī)式和正規(guī)集持履刷賂證易
21、姻勁粹襖啼問責(zé)華練馳團(tuán)雨門拼曙摸劫俗糟豌孽贍息埋吐繡編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)(3) 如果R和S是上的正規(guī)式,它們所表示的正規(guī)集分別為L(R)和L(S),則: R|S是上的正規(guī)式,它所表示的正規(guī)集為L(R)L(S); RS是上的正規(guī)式,它所表示的正規(guī)集為L(R)L(S); (R) * 是上的正規(guī)式,它所表示的正規(guī)集為(L(R) * ; 2.3 正規(guī)表達(dá)式與優(yōu)先自動機(jī)簡介第三條規(guī)則稱為歸納規(guī)則根據(jù)已有的正規(guī)式和正規(guī)集生成其它正規(guī)式和正規(guī)集可以看出,歸納規(guī)則中有三種運算: “|” 為或運算 “”為連接運算,通??墒÷?“
22、* ”為閉包運算址淹爸佩奠鼠龜唇躲蜂拿達(dá)窩資鑿鎂扮暴未評丁卿硅盯轅耍丟關(guān)怠絳千星編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)(4)僅由有限次使用規(guī)則(1)(3)得到的表達(dá)式是上的正規(guī)式,它所表示的集合是上的正規(guī)集 2.3 正規(guī)表達(dá)式與優(yōu)先自動機(jī)簡介第四條規(guī)則稱為界限規(guī)則或者終止規(guī)則根據(jù)已有的正規(guī)式和正規(guī)集生成其它正規(guī)式和正規(guī)集注意: 在后面的正規(guī)式中,約定:不做特殊說明情況下,大寫字母(如R、S等)對應(yīng)字的集合悸彝廷霹雕畔嚇渠君崎八釣攀晝忙為赴眶余乎如詠棋戌冷地膜礦跟戰(zhàn)搽簍編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(
23、2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.3.1:正規(guī)表達(dá)式與正規(guī)集(正規(guī)式的運算)連接運算:字的連接:設(shè)“ab”和“aab”是兩個字,則 abaab = abaab正規(guī)式的連接:RS= | R&S 例:A=ab,bc ,B=ac,cb ,則: AB =abac,abcb,bcac,bccb正規(guī)式的冪運算:正規(guī)式自身的n次連接并約定: R0 = 。2.3 正規(guī)表達(dá)式與優(yōu)先自動機(jī)簡介Rn=RRRn個ABBA詞卉走瘁剔逗起倦傻介瞻潛窩所望楊檢番簾豌仁蔭蠅濟(jì)券曙籮而勛彝氨晝編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.3.1:正規(guī)表達(dá)
24、式與正規(guī)集(正規(guī)式的運算)閉包運算:集合R的閉包表示為R*,具體定義為: R*=R0R1R2R3集合R的正閉包表示為R+,具體定義為: R+ =R1R2R3 = RR* 顯然: R*= R0R+ 2.3 正規(guī)表達(dá)式與優(yōu)先自動機(jī)簡介欣驟啥就論段誨惠縛階肌沮使嚎己聳矛痹隊棠喜撅胚澀械恒衙領(lǐng)致茨鄭凍編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.3.1:正規(guī)表達(dá)式與正規(guī)集(正規(guī)式的運算性質(zhì))對于上的正規(guī)式R和S,如果它們的正規(guī)集滿足L(R)=L(S),則稱R和S等價,記為R=S。正規(guī)式的性質(zhì)有:(1)交換律: R | S = S | R(2
25、)結(jié)合律: R | (S | T) = (R | S) | T;R(ST) = (RS)T(3)分配律: R(S | T) = RS | RT;(R | S)T=RT | ST(4)同一律: R = R = R2.3 正規(guī)表達(dá)式與優(yōu)先自動機(jī)簡介浙裝隨綿塞汐梢除券末褒痊爍慶晾黎北宇頌哩拓打強(qiáng)妒滑戊魔符丑蒙多汗編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.3 課堂例題例2.1 令=a,b,設(shè)R=a(a | b)* 是上的正規(guī)式,試求其表示的正規(guī)集。解答 L(R)=L(a(a | b)*)=L(a)L(a | b)*)=L(a)(L(a | b)* =L(a)(L(a)L(b)* =a(ab)*=aa,b* =a, a, b, aa, ab, ba, bb, aaa, =a, aa, ab, aaa, aab, aba, abb, aaaa, 牛程篩集躺救漁帕鈔偶勤果左挽幀馭斤秸光希匈唱涕陳蔣劍碟鎖犀娩男楓編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)編譯原理(2)詞法_1(正規(guī)表達(dá)式與有限自動機(jī)簡介)2.3 課堂例題例2.2 令=a,b,根據(jù)給出的正規(guī)式,試描述其表示的正規(guī)集。正規(guī)式 正規(guī)集 ba* 上所有的
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024物流行業(yè)數(shù)據(jù)共享合同
- 二零二五年度·高職高專土建專業(yè)畢業(yè)生實習(xí)指導(dǎo)合同2篇
- 2024物業(yè)采購供應(yīng)2024委托代理合同
- 二零二五年度新型防火門安裝施工合同范本2篇
- 旅游行業(yè)業(yè)務(wù)員工作總結(jié)
- 電工器材銷售工作總結(jié)
- 航空服務(wù)員工作總結(jié)
- 2024版員工試用期合同協(xié)議書范本集錦
- 醫(yī)療行業(yè)客服工作總結(jié)
- 金屬加工工程師工作總結(jié)
- 《白夜行》名著導(dǎo)讀讀書分享
- 新起點,新發(fā)展心得體會
- 區(qū)域分析與規(guī)劃課件
- 第11章-膠體化學(xué)
- 財經(jīng)基礎(chǔ)知識課件
- 技術(shù)支持資料投標(biāo)書
- 靜壓管樁施工技術(shù)交底
- 綠植花卉租擺及園林養(yǎng)護(hù)服務(wù) 投標(biāo)方案(技術(shù)方案)
- 干細(xì)胞商業(yè)計劃書
- 從教走向?qū)W:在課堂上落實核心素養(yǎng)
- 美世國際職位評估體系IPE3.0使用手冊
評論
0/150
提交評論