當前位置:首頁 » 編程軟體 » 編譯原理怎麼看是終態和初態

編譯原理怎麼看是終態和初態

發布時間: 2024-09-15 09:24:02

『壹』 編譯原理搜索符的問題

從初態開始,(S':=.S,# ) ,初態的核心項目的搜索符為#號,這是定的,然後擴充初態,就是把所有的(S:=. αβ,# )加進去,若α為一個非終結符,假設為A,則把(A:= .γ)加進去,A:= .γ的搜索符為 FIRST(β#),就是說若β為空,則為原來S的搜索符,若β不為空,則為β的首終結符。繼續擴γ,一直到初態不能擴充為止。goto時,核心項目的搜索符是繼承過來的。
例子,若某狀態的核心項目為(A:=α.Bβ,a),則把項目(B:= .γ,FIRST(βa))加進去。

『貳』 編譯原理,如何判斷一個FA是DFA還是NFA

第一個是NFA 第二個是DFA
主要區別
1)DFA沒有輸入空串之上的轉換動作;
2)對於DFA,一個特定的符號輸入,有且只能得到一個狀態,而NFA就有可能得到一個狀態集;

『叄』 對給定的正規式b(a|b)*aa,構造其NFA M,並將其確定化。

表示方法:五元組(S,Z,f,S0,z)

S:狀態集

Z:字母表

f:映射關系

s0:初態

z:終態

(2)確定有限自動機DFA:f為單值映射

(3)非確定有限自動機NFA:f為多值映射

(4)狀態轉換圖和狀態轉換矩陣

(3)編譯原理怎麼看是終態和初態擴展閱讀

假定DFAMd=({s0,s1,s2},{a,b},f,s0,{s2}):

f:

f(s0,a)=s1f(s0,b)=s2

f(s1,a)=s1f(s1,b)=s2

f(s2,a)=s2f(s2,b)=s1

試著給出Md的狀態轉換圖和狀態轉換矩陣。

狀態轉換矩陣如下

ab

s0s1s2

s1s1s2

s2s2s1

熱點內容
scratch少兒編程課程 發布:2025-04-16 17:11:44 瀏覽:628
榮耀x10從哪裡設置密碼 發布:2025-04-16 17:11:43 瀏覽:357
java從入門到精通視頻 發布:2025-04-16 17:11:43 瀏覽:75
php微信介面教程 發布:2025-04-16 17:07:30 瀏覽:300
android實現陰影 發布:2025-04-16 16:50:08 瀏覽:788
粉筆直播課緩存 發布:2025-04-16 16:31:21 瀏覽:338
機頂盒都有什麼配置 發布:2025-04-16 16:24:37 瀏覽:204
編寫手游反編譯都需要學習什麼 發布:2025-04-16 16:19:36 瀏覽:801
proteus編譯文件位置 發布:2025-04-16 16:18:44 瀏覽:357
土壓縮的本質 發布:2025-04-16 16:13:21 瀏覽:583