NIST 對有限狀態機(Finite State Machine, FSM)的定義如下。? ??? 包含一組狀態集(states)、一個起始狀態(start state)、一組輸入符號集(alphabet)、一個映射輸入符號和當前狀態到下一狀態的轉換函數(transition function)的計算模型。當輸入符號串,模型隨即進入起始狀態。它要改變到新的狀態,依賴于轉換函數。在有限狀態機中,會有許多變量,例如,狀態機有很多與動作(actions)轉換(Mealy機)或狀態(摩爾機)關聯的動作,多重起始狀態,基于沒有輸入符號的轉換,或者指定符號和狀態(非定有限狀態機)的多個轉換,指派給接收狀態(識別者)的一個或多個狀態,等等。
??? 一個例子
??????????????
??? 上圖是一個接受者 FSM 模型,用來分析單詞“nice”。該分析器只接受字符輸入,包含6種狀態,狀態切換由輸入的字符驅動。理解起來非常簡單,在此不作解釋了。
??? 感謝宏云博士對本文翻譯提供的指導。請注意!引用、轉貼本文應注明原作者:Rosen Jiang 以及出處:http://www.tkk7.com/rosen
Powered by: BlogJava Copyright © Rosen