一、基本概念
英语:Finite-state machine简称FSM,又称有限状态自动机,简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型
二、概念术语:
状态:存储过去的信息,就是说:它反映从系统开始到现在时刻的输入变化
转移:指示状态变更,并且用“满足确使转移发生的条件”来描述它
动作:在给定时刻要进行的活动的描述
a、进入动作:在进入状态时进行
b、退出动作:在退出状态时进行
c、输入动作:依赖于当前状态和输入条件进行
d、转移动作:在进行特定转移时进行
状态转移表
当前状态 →
条件 ↓ 状态 A 状态 B 状态 C
条件 X … … …
条件 Y … 状态C …
条件 Z … … …
三、作用
状态寄存器:记录有限状态机的内部状态
有限状态机是组合逻辑和寄存器逻辑的一种组合:
寄存器逻辑:存储有限状态机的内部状态
组合逻辑:
a、次态逻辑:确定有限状态机的下一个状态
b、输出逻辑:确定有限状态机的输出
四、编程:
state:状态存储关于过去的信息,它反映从系统开始到现在时刻的输入变化
action & transition
动作是在给定时刻要进行的活动描述
转换是指状态变更
guards:检测器出现的原因是为了检测是否满足从一个状态切换到另一个状态
event:对系统重要的某件事情
1、被产生(被接受,等待被处理,一般放入时间队列)
2、被分发(从事件队列取出,分发到相应的状态机处理)
3、死亡(当状态机处理了该事件,它随之死亡)
五、有限状态机FSM的要点:
1、拥有一组状态,并且可以在这组状态之间进行切换。
2、状态机同时只能在一个状态
3、状态机可以接受一连串的输入事件
4、每个状态都有一系列的转换,转换与输入和另一状态有关