状态机
State Machine SM
一种计算模型,用于设计系统的行为和功能。它由一系列的状态以及在这些状态之间的转换组成。
基本概念
状态(State):系统在某一时刻的行为或条件。状态通常用变量或数据结构表示。
- 初始状态(Initial State):状态机开始运行时所处的状态。
- 最终状态(Final State):状态机完成其任务后所处的状态,有时也称为终止状态。
转换(Transition):状态之间的移动,通常由某个事件或条件触发。
事件(Event):触发状态转换的信号或条件。
动作(Action):在状态转换时执行的操作,可以是输出信号、修改变量等。
类型
有限状态机(Finite State Machine, FSM):状态和转换的数量是有限的。FSM是最简单的状态机类型。
- 确定性有限状态机(Deterministic Finite Automaton, DFA):对于每个状态和事件的组合,都有一个确定的转换。
- 非确定性有限状态机(Nondeterministic Finite Automaton, NFA):对于某些状态和事件的组合,可能有多个转换。
Mealy 机:输出不仅取决于当前状态,还取决于触发转换的事件。
Moore 机:输出仅取决于当前状态,与触发转换的事件无关。
定时状态机(Timed State Machine):状态转换不仅取决于事件,还取决于时间。