當前位置:首頁 » 編程軟體 » 編譯原理句柄

編譯原理句柄

發布時間: 2022-01-24 23:05:38

編譯原理習題,下圖為什麼a為句柄, 而不是最左面的b為句柄怎樣理解句柄定義中的最左簡單子樹中的簡

baSb的最右推導為:S->AB->ASb->bBSb->baSb

根據句柄定義:

所以a為baSb的句柄。

只有單層分支的子樹稱為簡單子樹。最左簡單子樹末端結點組成的符號串為句柄。

❷ 編譯原理什麼是素短語

編譯原理中,素短語是至少含義一個終結符,並且自身不包含任何更小素短語的一種短語。

素短語是一種特殊的短語,它是一個遞歸的定義,至少含有一個終結符,並且除它自身之外不再含任何更小的素短語,所謂最左素短語就是處於句型最左邊的素短語的短語。

一個算符優先文法G的任何句型的最左素短語是滿足以下條件的最左子串NaNb…NcNdN(N是非終結符,a,b,c,d是終結符)。例如:句型T+T*F+id,T*F是最左素短語,id是素短語。

(2)編譯原理句柄擴展閱讀:

通過語法樹可以得知素短語:

1、每個句型對應一棵語法樹

2、每棵語法樹的葉子結點從左到右排列構成一個句型

3、每棵語法樹的子樹的葉子結點從左到右排列構成一個短語

4、每棵語法樹的簡單子樹(只有父子兩層結點)的葉子結點從左到右排列構成一個簡單(直接)短語。

5、素短語是至少包含一個終結符的短語,但它不能包含其它素短語。

❸ 什麼叫活前綴,用通俗的話解答下,或者簡單的例子。 這個題是編譯原理的。

活前綴:右句型的前綴,而且其右端不會超過該句型的最右邊句柄的末端。
右句型:最右推導可得到的句型。
最右推導:每步推導都替代最右非終結符的推導。
推導:我們說αBγ推導出αβγ,是說存在產生式B->β。
產生式:左邊為非終結符,右邊為終結符與非終結符組合成的串。
非終結符:是字元串的集合。
終結符:組成語言的詞。如c語言中的2,a,int,if等。
句型:開始符經過若干步推導後得到的串。
前綴:如abc的前綴為a、ab、abc。
開始符:開始符是整個語言的集合。
句柄:非形式的,句柄是和某個產生式右部匹配的字元串,把句柄歸約成產生式左部的非終結符,可以得到最右推導的逆過程的一步。形式的定義為:開始符s經過若干步最右推導得到αBγ,αBγ經過一步最右推導得到αβγ,若γ為終結符的集合,則β為句柄。舉例:
E->E+E|E*E|-E|(E)|id,對於id+id*id,其中一個最右推導為E->E+E->E+E*E->E+E*id->E+id*id->id+id*id。在id+id*id歸約成E+id*id的過程中,最左邊的id是句柄。E+id*id歸約成E+E*id時,最左邊的id是句柄,把E+E*id歸約成E+E*E時,id是句柄。把E+E*E歸約成E+E時E*E是句柄。E+E歸約成E時,E+E是句柄。
歸約:可理解為把產生式右邊的串用產生式左邊的非終結符代替。
注1:再說一下活前綴,舉個例子,比如E+E*E歸約成E+E,句柄是E*E,那麼它的活前綴就是E、E+、E+E、E+E*、E+E*E。又比如id+id*id歸約成E+id*id,句柄是最左邊的id,那麼它的活前綴是id,因為不能超過句柄。
注2:至於為什麼要給出活前綴的定義和如何用歸約的方法實現語法分析,還要進一步學習。

❹ 編譯原理 句型的句柄怎麼求

句型aabbAb的句柄是D: bA;
S->aB->aaBB->aabSB->aabbAB->aabbAb
按照最左推導,其中的S->bA這步是最後的直接推導(即它推出的bA不再被繼續往下推導),雖然B->b也是這樣的,但不是最左的。
其實你根據句型畫個語法樹就一目瞭然了,句柄即是最左直接短語,首先要是直接短語(直接推導),再就是最左(按最左的話最先推出的)。

❺ 編譯原理中的句柄是什麼意思

是操作系統用來管理不同的對象,給他們一個編號而已

比如窗口、線程、圖標等都會對應一個句柄,這樣可以方便標識與管理

句柄其實也就是一個整數值,而且是唯一的

❻ 編譯原理 - 移進歸約分析中如何確定句柄的開始處與結束處

當然是根據文法來寫的呀 沒有文法無法確定 句柄的開始處和結束處 的 當然 還要看看匹配不匹配呀 ,要最後 這個句型和文法都匹配起來都行呀 總之 句柄肯定都是在產生式右端的 你可以一個個匹配過來

❼ 編譯原理中的短語、直接短語、句柄

如果給出短語等名詞的形式化的定義,便較難理解,不好求。我們通過構造語法樹來求解。首先你應該會根據文法將所給句型構造成語法樹的形式,即根據文法怎樣推導出句型E+T*F。如果你有數據結構二叉樹基礎的話這很簡單就構造出來了。構造出語法樹後,求短語看根節點,有T,和E。則短語為:E+T*F,T*F,而直接短語是指能直接推出葉子節點的根所對應的短語,可知該節點為T,直接短語為:T*F。句柄是最左直接短語,可知為:T*F。

❽ 句柄的編譯原理

一個句型的最左直接短語稱為該句型的句柄,句型的句柄是和某產生式右部匹配的子串,並且,把它規約成該產生式左部的非終結符,代表了最右推導過程的逆過程的一步。
如右圖,在推導過程中,S→aABe→aAde→aAbcde→abbcde,此四步的句柄分別為aABe,d,Abc,b
句柄的特徵:
1. 它是直接短語,即某規則右部。
2. 它具有最左性。
注意:短語、直接短語和句柄都是針對某一句型的,特指句型中的哪些符號子串能構成短語和直接短語,離開具體的句型來談短語、直接短語和句柄是無意義的。另外句柄的右邊僅含終結符如果文法二義,那麼句柄可能不唯一。

❾ 編譯原理中的句柄是什麼意思舉個簡單的例子

語法樹的最左子樹

❿ 編譯原理中,句柄的定義中的最左直接短語,那個最左是什麼意思啊急求!!!跪謝!!!

就是說,對一棵分析樹從上到下,從左到右把所有的直接短語寫出來,在所有的直接短語的最前面(也就是最左邊)的那個就是句柄啦。

希望幫到你理解這個意思。

熱點內容
win7共享文件訪問許可權 發布:2024-12-26 08:33:22 瀏覽:147
安卓如何下載play商店app 發布:2024-12-26 08:32:31 瀏覽:498
我的世界網易伺服器卡崩進不去 發布:2024-12-26 08:20:48 瀏覽:738
sqlserver導出xml 發布:2024-12-26 08:06:26 瀏覽:289
wifi無訪問許可權 發布:2024-12-26 08:05:33 瀏覽:674
win10怎麼輸入無線密碼 發布:2024-12-26 08:05:33 瀏覽:676
如何查看科目二預約密碼 發布:2024-12-26 08:02:45 瀏覽:260
魚的生理鹽水怎麼配置 發布:2024-12-26 07:56:59 瀏覽:906
問道手游有腳本嗎 發布:2024-12-26 07:53:50 瀏覽:842
安卓刷機會怎麼樣 發布:2024-12-26 07:51:15 瀏覽:540