上下文無(wú)關(guān)文法(Context-Free Grammar, CFG)是一個(gè)4元組G=(V, T, S, P),其中,V和T是不相交的有限集,S∈V,P是一組有限的產(chǎn)生式規(guī)則集,形如A→α,其中A∈V,且α∈(V∪T)*。V的元素稱(chēng)為非終結(jié)符,T的元素稱(chēng)為終結(jié)符,S是一個(gè)特殊的非終結(jié)符,稱(chēng)為文法開(kāi)始符。
設(shè)G=(V, T, S, P)是一個(gè)CFG,則G產(chǎn)生的語(yǔ)言是所有可由G產(chǎn)生的字符串組成的集合,即L(G)={x∈T* | Sx}。一個(gè)語(yǔ)言L(fǎng)是上下文無(wú)關(guān)語(yǔ)言(Context-Free Language, CFL),當(dāng)且僅當(dāng)存在一個(gè)CFG G,使得L=L(G)。 *⇒
例如,設(shè)文法G:S→AB
A→aA|a
B→bB|b
則L(G)={a^nb^m | n,m>=1}
其中非終結(jié)符都是大寫(xiě)字母,開(kāi)始符都是S,終結(jié)符都是小寫(xiě)字母。
標(biāo)簽:
Context-Free
Grammar
CFG
上傳時(shí)間:
2013-12-10
上傳用戶(hù):gaojiao1999
構(gòu)造一個(gè)簡(jiǎn)單程序設(shè)計(jì)語(yǔ)言的詞法分析器,要求:
1) 含有保留字program, begin, end, var, integer, if, then, else, do, while.
2) 標(biāo)識(shí)符和無(wú)符號(hào)的整常數(shù),其中保留字和標(biāo)識(shí)符不區(qū)分大小寫(xiě).
3) 含有界符和運(yùn)算符如下:+,-, (, ), =, >, <, , :, :=.,,。
4) 輸出二元組。
標(biāo)簽:
程序設(shè)計(jì)語(yǔ)言
分析器
上傳時(shí)間:
2014-01-04
上傳用戶(hù):離殤