版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——編譯原理其次版
編譯原理其次版_張素琴_課后習(xí)題解答
第1章引論
第1題
解釋以下術(shù)語(yǔ):(1)編譯程序(2)源程序(3)目標(biāo)程序
(4)編譯程序的前端(5)后端(6)遍
答案:
(1)編譯程序:假使源語(yǔ)言為高級(jí)語(yǔ)言,目標(biāo)語(yǔ)言為某臺(tái)計(jì)算機(jī)上的匯編語(yǔ)言或機(jī)器語(yǔ)
言,則此翻譯程序稱為編譯程序。
(2)源程序:源語(yǔ)言編寫的程序稱為源程序。
(3)目標(biāo)程序:目標(biāo)語(yǔ)言書寫的程序稱為目標(biāo)程序。
(4)編譯程序的前端:它由這樣一些階段組成:這些階段的工作主要依靠于源語(yǔ)言而與
目標(biāo)機(jī)無(wú)關(guān)。尋常前端包括詞法分析、語(yǔ)法分析、語(yǔ)義分析和中間代碼生成這些階段,某些優(yōu)化工作也可在前端做,也包括與前端每個(gè)階段相關(guān)的出錯(cuò)處理工作和符號(hào)表管理等工作。
(5)后端:指那些依靠于目標(biāo)機(jī)而一般不依靠源語(yǔ)言,只與中間代碼有關(guān)的那些階段,
即目標(biāo)代碼生成,以及相關(guān)出錯(cuò)處理和符號(hào)表操作。
(6)遍:是對(duì)源程序或其等價(jià)的中間語(yǔ)言程序從頭到尾掃視并完成規(guī)定任務(wù)的過(guò)程。
第2題
一個(gè)典型的編譯程序?qū)こS赡男┎糠纸M成?各部分的主要功能是什么?并畫出編譯程序的總體結(jié)構(gòu)圖。
答案:
一個(gè)典型的編譯程序?qū)こ0?個(gè)組成部分,它們是詞法分析程序、語(yǔ)法分析程序、語(yǔ)義分析程序、中間代碼生成程序、中間代碼優(yōu)化程序、目標(biāo)代碼生成程序、表格管理程序和錯(cuò)誤處理程序。其各部分的主要功能簡(jiǎn)述如下。
詞法分析程序:輸人源程序,拼單詞、檢查單詞和分析單詞,輸出單詞的機(jī)內(nèi)表達(dá)形式。語(yǔ)法分析程序:檢查源程序中存在的形式語(yǔ)法錯(cuò)誤,輸出錯(cuò)誤處理信息。語(yǔ)義分析程序:進(jìn)行語(yǔ)義檢查和分析語(yǔ)義信息,并把分析的結(jié)果保存到各類語(yǔ)義信息表中。
中間代碼生成程序:依照語(yǔ)義規(guī)則,將語(yǔ)法分析程序分析出的語(yǔ)法單位轉(zhuǎn)換成一定形式的中間語(yǔ)言代碼,如三元式或四元式。
中間代碼優(yōu)化程序:為了產(chǎn)生高質(zhì)量的目標(biāo)代碼,對(duì)中間代碼進(jìn)行等價(jià)變換處理。
課后
答
案網(wǎng)
w
ww
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
目標(biāo)代碼生成程序:將優(yōu)化后的中間代碼程序轉(zhuǎn)換成目標(biāo)代碼程序。
表格管理程序:負(fù)責(zé)建立、填寫和查找等一系列表格工作。表格的作用是記錄源程序的
編譯的每個(gè)階段所需信息多數(shù)都從表格中讀取,產(chǎn)生的各類信息和編譯各階段的進(jìn)展?fàn)顩r,
中間結(jié)果都記錄在相應(yīng)的表格中??梢哉f(shuō)整個(gè)編譯過(guò)程就是造表、查表的工作過(guò)程。需要指出的是,這里的“表格管理程序〞并不意味著它就是一個(gè)獨(dú)立的表格管理模塊,而是指編譯程序具有的表格管理功能。
錯(cuò)誤處理程序:處理和校正源程序中存在的詞法、語(yǔ)法和語(yǔ)義錯(cuò)誤。當(dāng)編譯程序發(fā)現(xiàn)源程序中的錯(cuò)誤時(shí),錯(cuò)誤處理程序負(fù)責(zé)報(bào)告出錯(cuò)的位置和錯(cuò)誤性質(zhì)等信息,同時(shí)對(duì)發(fā)現(xiàn)的錯(cuò)誤進(jìn)行適當(dāng)?shù)男Uㄐ迯?fù)),目的是使編譯程序能夠繼續(xù)向下進(jìn)行分析和處理。
案網(wǎng)
w
ww
注意:假使問(wèn)編譯程序有哪些主要構(gòu)成成分,只要回復(fù)六部分就可以。假使搞不明白,就回復(fù)八部分。
第3題
何謂翻譯程序、編譯程序和解釋程序?它們?nèi)咧g有何種關(guān)系?
答案:
翻譯程序是指將用某種語(yǔ)言編寫的程序轉(zhuǎn)換成另一種語(yǔ)言形式的程序的程序,如編譯程序和匯編程序等。
編譯程序是把用高級(jí)語(yǔ)言編寫的源程序轉(zhuǎn)換(加工)成與之等價(jià)的另一種用低級(jí)語(yǔ)言編寫的目標(biāo)程序的翻譯程序。
解釋程序是解釋、執(zhí)行高級(jí)語(yǔ)言源程序的程序。解釋方式一般分為兩種:一種方式是,源程序功能的實(shí)現(xiàn)完全由解釋程序承受和完成,即每讀出源程序的一條語(yǔ)句的第一個(gè)單詞,
該部分負(fù)責(zé)完成這條語(yǔ)句的功則依據(jù)這個(gè)單詞把控制轉(zhuǎn)移到實(shí)現(xiàn)這條語(yǔ)句功能的程序部分,
能的實(shí)現(xiàn),完成后返回到解釋程序的總控部分再讀人下一條語(yǔ)句繼續(xù)進(jìn)行解釋、執(zhí)行,如此反復(fù);另一種方式是,一邊翻譯一邊執(zhí)行,即每讀出源程序的一條語(yǔ)句,解釋程序就將其翻譯成一段機(jī)器指令并執(zhí)行之,然后再讀人下一條語(yǔ)句繼續(xù)進(jìn)行解釋、執(zhí)行,如此反復(fù)。無(wú)論
課后
答
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
(1)自編譯:用某一高級(jí)語(yǔ)言書寫其本身的編譯程序。
(2)交織編譯:A機(jī)器上的編譯程序能產(chǎn)生B機(jī)器上的目標(biāo)代碼。
(3)自展:首先確定一個(gè)十分簡(jiǎn)單的核心語(yǔ)言L0,用機(jī)器語(yǔ)言或匯編語(yǔ)言書寫出它的編譯,并用L0編寫L1的編譯程序T1,再把語(yǔ)程序T0,再把語(yǔ)言L0擴(kuò)展到L1,此時(shí)L0L1
言L1擴(kuò)展為L(zhǎng)2,有L1L2,并用L1編寫L2的編譯程序T2,……,如此逐步擴(kuò)展下去,類似滾雪球一樣,直到我們所要求的編譯程序。
(4)移植:將A機(jī)器上的某高級(jí)語(yǔ)言的編譯程序搬到B機(jī)器上運(yùn)行。
課后
是哪種方式,其加工結(jié)果都是源程序的執(zhí)行結(jié)果。目前好多解釋程序采取上述兩種方式的綜合實(shí)現(xiàn)方案,即先把源程序翻譯成較簡(jiǎn)單解釋執(zhí)行的某種中間代碼程序,然后集中解釋執(zhí)行中間代碼程序,最終得到運(yùn)行結(jié)果。
廣義上講,編譯程序和解釋程序都屬于翻譯程序,但它們的翻譯方式不同,解釋程序是邊翻譯(解釋)邊執(zhí)行,不產(chǎn)生目標(biāo)代碼,輸出源程序的運(yùn)行結(jié)果。而編譯程序只負(fù)責(zé)把源程序翻譯成目標(biāo)程序,輸出與源程序等價(jià)的目標(biāo)程序,而目標(biāo)程序的執(zhí)行任務(wù)由操作系統(tǒng)來(lái)完成,即只翻譯不執(zhí)行。
第4題
對(duì)以下錯(cuò)誤信息,請(qǐng)指出可能是編譯的哪個(gè)階段(詞法分析、語(yǔ)法分析、語(yǔ)義分析、代碼生成)報(bào)告的。
(1)else沒(méi)有匹配的if(2)數(shù)組下標(biāo)越界
(3)使用的函數(shù)沒(méi)有定義(4)在數(shù)中出現(xiàn)非數(shù)字字符
答案:
(1)語(yǔ)法分析(2)語(yǔ)義分析(3)語(yǔ)法分析(4)詞法分析
第5題
編譯程序大致有哪幾種開發(fā)技術(shù)?
答案:
答
案網(wǎng)
w
ww
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
第6題
計(jì)算機(jī)執(zhí)行用高級(jí)語(yǔ)言編寫的程序有哪些途徑?它們之間的主要區(qū)別是什么?
答案:
計(jì)算機(jī)執(zhí)行用高級(jí)語(yǔ)言編寫的程序主要途徑有兩種,即解釋與編譯。像Basic之類的語(yǔ)言,屬于解釋型的高級(jí)語(yǔ)言。它們的特點(diǎn)是計(jì)算機(jī)并不事先對(duì)高級(jí)語(yǔ)言進(jìn)行全盤翻譯,將其變?yōu)闄C(jī)器代碼,而是每讀入一條高級(jí)語(yǔ)句,就用解釋器將其翻譯為一條機(jī)器代碼,予以執(zhí)行,然后再讀入下一條高級(jí)語(yǔ)句,翻譯為機(jī)器代碼,再執(zhí)行,如此反復(fù)。
總而言之,是邊翻譯邊執(zhí)行。
像C,Pascal之類的語(yǔ)言,屬于編譯型的高級(jí)語(yǔ)言。它們的特點(diǎn)是計(jì)算機(jī)事先對(duì)高級(jí)語(yǔ)言進(jìn)行全盤翻譯,將其全部變?yōu)闄C(jī)器代碼,再統(tǒng)一執(zhí)行,即先翻譯,后執(zhí)行。從速度上看,編譯型的高級(jí)語(yǔ)言比解釋型的高級(jí)語(yǔ)言更快。
課后
答
案網(wǎng)
w
ww
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
第2章PL/0編譯程序的實(shí)現(xiàn)
第1題
PL/0語(yǔ)言允許過(guò)程嵌套定義和遞歸調(diào)用,試問(wèn)它的編譯程序如何解決運(yùn)行時(shí)的存儲(chǔ)管理。
答案:
PL/0語(yǔ)言允許過(guò)程嵌套定義和遞歸調(diào)用,它的編譯程序在運(yùn)行時(shí)采用了棧式動(dòng)態(tài)存儲(chǔ)管理。(數(shù)組CODE存放的只讀目標(biāo)程序,它在運(yùn)行時(shí)不改變。)運(yùn)行時(shí)的數(shù)據(jù)區(qū)S是由解釋程序定義的一維整型數(shù)組,解釋執(zhí)行時(shí)對(duì)數(shù)據(jù)空間S的管理遵循后進(jìn)先出規(guī)則,當(dāng)每個(gè)過(guò)程(包括主程序)被調(diào)用時(shí),才分派數(shù)據(jù)空間,退出過(guò)程時(shí),則所分派的數(shù)據(jù)空間被釋放。應(yīng)用動(dòng)態(tài)鏈和靜態(tài)鏈的方式分別解決遞歸調(diào)用和非局部變量的引用問(wèn)題。
第2題
若PL/0編譯程序運(yùn)行時(shí)的存儲(chǔ)分派策略采用棧式動(dòng)態(tài)分派,并用動(dòng)態(tài)鏈和靜態(tài)鏈的方式分別解決遞歸調(diào)用和非局部變量的引用問(wèn)題,試寫出以下程序執(zhí)行到賦值語(yǔ)句b∶=10時(shí)運(yùn)行棧的布局示意圖。varx,y;
procedurep;vara;
procedureq;varb;begin(q)b∶=10;end(q);procedures;varc,d;
procedurer;vare,f;begin(r)callq;end(r);begin(s)callr;end(s);begin(p)calls;
課后
答
案網(wǎng)
w
ww
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
end(p);begin(main)callp;end(main).
答案:
程序執(zhí)行到賦值語(yǔ)句b∶=10時(shí)運(yùn)行棧的布局示意圖為:
案網(wǎng)
第3題
寫出題2中當(dāng)程序編譯到r的過(guò)程體時(shí)的名字表table的內(nèi)容。
namekind
答案:
題2中當(dāng)程序編譯到r的過(guò)程體時(shí)的名字表table的內(nèi)容為:namekindlevel/valxvariableyvariablepprocedure
000
adrdxdx+1
size
課
后
答
w
ww
level/valadrsize
.k
過(guò)程p的入口(待填)5
hd
aw
.
com
編譯原理其次版_張素琴_課后習(xí)題解答
avariableqproceduresprocedurecvariabledvariablerprocedureevariablefvariable
11122233
dx
過(guò)程q的入口4
dxdxdxdx+1
過(guò)程s的入口(待填)5
過(guò)程r的入口5
注意:q和s是并列的過(guò)程,所以q定義的變量b被覆蓋。
第4題
指出棧頂指針T,最新活動(dòng)記錄基地址指針B,動(dòng)態(tài)鏈指針DL,靜態(tài)鏈指針SL與返回地址RA的用途。
答案:
棧頂指針T,最新活動(dòng)記錄基地址指針B,動(dòng)態(tài)鏈指針DL,靜態(tài)鏈指針SL與返回地址RA的用途說(shuō)明如下:
T:棧頂寄放器T指出了當(dāng)前棧中最新分派的單元(T也是數(shù)組S的下標(biāo))。B:基址寄放器,指向每個(gè)過(guò)程被調(diào)用時(shí),在數(shù)據(jù)區(qū)S中給它分派的數(shù)據(jù)段起始地址,也稱基地址。
SL:靜態(tài)鏈,指向定義該過(guò)程的直接外過(guò)程(或主程序)運(yùn)行時(shí)最新數(shù)據(jù)段的基地址,用以引用非局部(包圍它的過(guò)程)變量時(shí),尋覓該變量的地址。
DL:動(dòng)態(tài)鏈,指向調(diào)用該過(guò)程前正在運(yùn)行過(guò)程的數(shù)據(jù)段基地址,用以過(guò)程執(zhí)行終止釋放數(shù)據(jù)空間時(shí),恢復(fù)調(diào)用該過(guò)程前運(yùn)行棧的狀態(tài)。
RA:返回地址,記錄調(diào)用該過(guò)程時(shí)目標(biāo)程序的斷點(diǎn),即調(diào)用過(guò)程指令的下一條指令的地址,用以過(guò)程執(zhí)行終止后返回調(diào)用過(guò)程時(shí)的下一條指令繼續(xù)執(zhí)行。
在每個(gè)過(guò)程被調(diào)用時(shí)在棧頂分派3個(gè)聯(lián)系單元,用以存放SL,DL,RA。
第5題
PL/0編譯程序所產(chǎn)生的目標(biāo)代碼是一種假想棧式計(jì)算機(jī)的匯編語(yǔ)言,請(qǐng)說(shuō)明該匯編語(yǔ)言中以下指令各自的功能和所完成的操作。(1)INT0A(2)OPR00(3)CALLA答案:
PL/0編譯程序所產(chǎn)生的目標(biāo)代碼中有3條十分重要的特別指令,這3條指令在code中的位置和功能以及所完成的操作說(shuō)明如下:
課后
答
案網(wǎng)
w
ww
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
INT0A
在過(guò)程目標(biāo)程序的入口處,開拓A個(gè)單元的數(shù)據(jù)段。A為局部變量的個(gè)數(shù)+3。OPR00
在過(guò)程目標(biāo)程序的出口處,釋放數(shù)據(jù)段(退棧),恢復(fù)調(diào)用該過(guò)程前正在運(yùn)行的過(guò)程的數(shù)據(jù)段基址寄放器B和棧頂寄放器T的值,并將返回地址送到指令地址寄放器P中,以使調(diào)用前的程序從斷點(diǎn)開始繼續(xù)執(zhí)行。CALLA
調(diào)用過(guò)程,完成填寫靜態(tài)鏈、動(dòng)態(tài)鏈、返回地址,給出被調(diào)用過(guò)程的基地址值,送入基址寄放器B中,目標(biāo)程序的入口地址A的值送指令地址寄放器P中,使指令從A開始執(zhí)行。第6題
給出對(duì)PL/0語(yǔ)言作如下功能擴(kuò)展時(shí)的語(yǔ)法圖和EBNF的語(yǔ)法描述。(1)擴(kuò)展條件語(yǔ)句的功能使其為:
if〈條件〉then〈語(yǔ)句〉[else〈語(yǔ)句〉](2)擴(kuò)展repeat語(yǔ)句為:
〈語(yǔ)句〉}until〈條件〉repeat〈語(yǔ)句〉{;
答案:
對(duì)PL/0語(yǔ)言作如下功能擴(kuò)展時(shí)的語(yǔ)法圖和EBNF的語(yǔ)法描述如下:
(1)擴(kuò)展條件語(yǔ)句的語(yǔ)法圖為:
(2)擴(kuò)展repeat語(yǔ)句的語(yǔ)法圖為:
課后
EBNF的語(yǔ)法描述為:〈條件語(yǔ)句〉::=if〈條件〉then〈語(yǔ)句〉[else〈語(yǔ)句〉]
答
案網(wǎng)
w
ww
EBNF的語(yǔ)法描述為:〈重復(fù)語(yǔ)句〉::=repeat〈語(yǔ)句〉{;〈語(yǔ)句〉}until〈條件〉
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
第3章文法和語(yǔ)言
第1題
文法G=({A,B,S},{a,b,c},P,S)其中P為:S→Ac|aBA→abB→bc
寫出L(G[S])的全部元素。
答案:
L(G[S])={abc}
第2題
文法G[N]為:N→D|ND
D→0|1|2|3|4|5|6|7|8|9G[N]的語(yǔ)言是什么?
答案:
G[N]的語(yǔ)言是V+。V={0,1,2,3,4,5,6,7,8,9}N=ND=NDD=NDDDD...D=DD
0開頭的非負(fù)整數(shù)?
第3題
為只包含數(shù)字、加號(hào)和減號(hào)的表達(dá)式,例如9-2+5,3-1,7等構(gòu)造一個(gè)文法。
G[S]:
S-S+D|S-D|D
第4題
已知文法G[Z]:Z→aZb|ab
寫出L(G[Z])的全部元素。
課后
答
案網(wǎng)
w
ww
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
答案:
nn
b|n=1}
第5題
寫一文法,使其語(yǔ)言是偶正整數(shù)的集合。要求:(1)允許0打頭;
(2)不允許0打頭。
答案:
(1)允許0E→NT|DT→NT|D
N→D|1|3|5|7|9D→0|2|4|6|8
(2)不允許0開頭的偶正整數(shù)集合的文法E→NT|DT→FT|GN→D|1|3|5|7|9D→2|4|6|8F→N|0G→D|0
第6題
已知文法G:
表達(dá)式::=項(xiàng)|表達(dá)式+項(xiàng)項(xiàng)::=因子|項(xiàng)*因子因子::=(表達(dá)式)|i
試給出下述表達(dá)式的推導(dǎo)及語(yǔ)法樹。(5)i+(i+i)(6)i+i*i
課后
答
案網(wǎng)
w
ww
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
答案:
=表達(dá)式+因子
=表達(dá)式+(表達(dá)式)
=表達(dá)式+(表達(dá)式+項(xiàng))=表達(dá)式+(表達(dá)式+因子)=表達(dá)式+(表達(dá)式+i)=表達(dá)式+(項(xiàng)+i)=表達(dá)式+(因子+i)=表達(dá)式+(i+i)=項(xiàng)+(i+i)=因子+(i+i)=i+(i+i)
(6)表達(dá)式
=表達(dá)式+項(xiàng)
=表達(dá)式+項(xiàng)*因子=表達(dá)式+項(xiàng)*i=表達(dá)式+因子*i=表達(dá)式+i*i=項(xiàng)+i*i=因子+i*i=i+i*i
課后
答
案網(wǎng)
w
ww
.
編譯原理其次版_張素琴_課后習(xí)題解答
第7題
證明下述文法G[〈表達(dá)式〉]是二義的。
〈運(yùn)算符〉〈表達(dá)式〉〈表達(dá)式〉∷=a|(〈表達(dá)式〉)|〈表達(dá)式〉
〈運(yùn)算符〉∷=+|-|*|/
答案:
可為句子a+a*a構(gòu)造兩個(gè)不同的最右推導(dǎo):
〈運(yùn)算符〉〈表達(dá)式〉最右推導(dǎo)1〈表達(dá)式〉〈表達(dá)式〉
〈表達(dá)式〉〈運(yùn)算符〉a
〈表達(dá)式〉*a
〈表達(dá)式〉〈運(yùn)算符〉〈表達(dá)式〉*a
〈表達(dá)式〉〈運(yùn)算符〉a*a
〈表達(dá)式〉+a*a
a+a*a
〈運(yùn)算符〉〈表達(dá)式〉最右推導(dǎo)2〈表達(dá)式〉〈表達(dá)式〉
〈表達(dá)式〉〈運(yùn)算符〉〈表達(dá)式〉〈運(yùn)算符〉〈表達(dá)式〉
〈表達(dá)式〉〈運(yùn)算符〉〈表達(dá)式〉〈運(yùn)算符〉a
〈表達(dá)式〉〈運(yùn)算符〉〈表達(dá)式〉*a
〈表達(dá)式〉〈運(yùn)算符〉a*a
〈表達(dá)式〉+a*a
a+a*a
課后
答
案網(wǎng)
w
ww
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
或者:
對(duì)輸入字符串a(chǎn)bc,能構(gòu)造兩棵不同的語(yǔ)法樹,所以它是二義的。
第9題
考慮下面上下文無(wú)關(guān)文法:S→SS*|SS+|a
(1)說(shuō)明通過(guò)此文法如何生成串a(chǎn)a+a*
(2)G[S]的語(yǔ)言是什么?
答案:(1)此文法生成串a(chǎn)a+a*的最右推導(dǎo)如下
S=SS*=SS*=Sa*=SS+a*=Sa+a*=aa+a*
(2)該文法生成的語(yǔ)言是:*+的后綴表達(dá)式,即逆波蘭式。
hd
aw.
S
課后
答
案w
ww
.com
第8題
文法G[S]為:S→Ac|aBA→abB→bc
該文法是否為二義的?為什么?
答案:
對(duì)于串a(chǎn)bc
(1)S=Ac=abc(2)S=aB=abc
即存在兩不同的最右推導(dǎo)。所以,該文法是二義的。
編譯原理其次版_張素琴_課后習(xí)題解答
此句型對(duì)應(yīng)語(yǔ)法樹如右,故為此文法一個(gè)句型?;蛘撸河捎诖嬖谕茖?dǎo)序列:E=E+T=E+T*F,所以E+T*F句型
此句型相對(duì)于E的短語(yǔ)有:E+T*F;相對(duì)于T的短語(yǔ)有T*F
直接短語(yǔ)為:T*F句柄為:T*F
第13題
一個(gè)上下文無(wú)關(guān)文法生成句子abbaa的推導(dǎo)樹如下:(1)給出串a(chǎn)bbaa最左推導(dǎo)、最右推導(dǎo)。
(2)該文法的產(chǎn)生式集合P(3)
課后
答
案網(wǎng)
w
ww
.k
第10題
文法S→S(S)S|ε
(1)生成的語(yǔ)言是什么?
(2)該文法是二義的嗎?說(shuō)明理由。
答案:
(1)嵌套的括號(hào)
(2)是二義的,由于對(duì)于()()可以構(gòu)造兩棵不同的語(yǔ)法樹。
第11題
令文法G[E]為:E→T|E+T|E-TT→F|T*F|T/FF→(E)|i
證明E+T*F
是它的一個(gè)句型,指出這個(gè)句型的所有短語(yǔ)、直接短語(yǔ)和句柄。
答案:
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
答案:
(1)串a(chǎn)bbaa最左推導(dǎo):
最右推導(dǎo):
S=ABS=ABAa=ABaa=ASBBaa=ASBbaa=ASbbaa=Abbaa=abbaa
(2)產(chǎn)生式有:S→ABS|Aa|εA→aB→SBB|b
可能元素有:ε
(3)該句子的短語(yǔ)有:
aA是相對(duì)Sb是相對(duì)Bεbb是相對(duì)B的短語(yǔ)aa是相對(duì)S的短語(yǔ)aεbbaa是相對(duì)S的短語(yǔ)
直接短語(yǔ)有:aεb
句柄是:a
答案:(1)S→AAA→aAb|ε(2)
S→1S0|AA→0A1|ε(3)
S→0S0|1S1|ε
課后
第14題
給出生成下述語(yǔ)言的上下文無(wú)關(guān)文法:(1){anbnambm|n,m=0}(2){1n0m1m0n|n,m=0}
(3){WaWr|W屬于{0|a}*,Wr表示W(wǎng)的逆}
答
案網(wǎng)
w
ww
.k
hd
aw.
com
編譯原理其次版_張素琴_課后習(xí)題解答
第16題
給出生成下述語(yǔ)言的三型文法:
(1){an|n=0}
(2){anbm|n,m=1}(3){anbmck|n,m,k=0}
答案:
(1)S→aS|ε(2)
S→aAA→aA|BB→bB|b(3)
A→aA|BB→bB|CC→cC|ε
第17題
習(xí)題7和習(xí)題11中的文法等價(jià)嗎?
答案:
等價(jià)。
第18題
解釋以下術(shù)語(yǔ)和概念:(1)字母表
(2)串、字和句子
(3)語(yǔ)言、語(yǔ)法和語(yǔ)義答案:
(1)字母表:是一個(gè)非空有窮集合。
(2)串:符號(hào)的有窮序列。
字
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年財(cái)經(jīng)專業(yè)入門知識(shí)考試題目集
- 2026年職場(chǎng)溝通技巧培訓(xùn)師專業(yè)題庫(kù)
- 2026年生物多樣性保護(hù)與生態(tài)平衡意識(shí)測(cè)試題集
- 2026年國(guó)家大學(xué)英語(yǔ)四級(jí)考級(jí)技能與詞匯練習(xí)題
- 2026年國(guó)際商務(wù)英語(yǔ)水平測(cè)試試題
- 2026年移動(dòng)應(yīng)用開發(fā)與性能測(cè)試指南書
- 健全職業(yè)教育數(shù)字化評(píng)估制度
- 2026年水利電力工程高級(jí)專業(yè)技術(shù)職務(wù)評(píng)審題目參考
- 職業(yè)性皮膚病的治療藥物安全性
- 信息發(fā)布三審三校制度
- 城市更新與區(qū)域經(jīng)濟(jì)刺激-洞察闡釋
- GB/T 7573-2025紡織品水萃取液pH值的測(cè)定
- 境內(nèi)大中小型企業(yè)貸款專項(xiàng)統(tǒng)計(jì)制度
- 北師版-八年級(jí)數(shù)學(xué)上冊(cè)常見計(jì)算題練習(xí)
- 【生物】種子的萌發(fā)-2024-2025學(xué)年七年級(jí)生物下冊(cè)同步教學(xué)課件(人教版2024)
- 光伏發(fā)電安裝質(zhì)量驗(yàn)收評(píng)定表
- AQ 1046-2007 地勘時(shí)期煤層瓦斯含量測(cè)定方法(正式版)
- 房屋過(guò)戶給子女的協(xié)議書的范文
- 超聲振動(dòng)珩磨裝置的總體設(shè)計(jì)
- 醫(yī)保違規(guī)行為分類培訓(xùn)課件
- 醫(yī)療器械法規(guī)對(duì)互聯(lián)網(wǎng)銷售的限制
評(píng)論
0/150
提交評(píng)論