admin管理员组文章数量:1026989
状态机
#什么是状态机?
定义:
状态机是 “”有限状态自动机的简称“” 。
先来解释什么是“状态”( State ):
现实事物是有不同状态的,例如一个LED等,就有 亮 和 灭两种状态。我们通常所说的状态机是有限状态机,也就是被描述的事物的状态的数量是有限个,例如LED灯的状态就是两个 亮和 灭。
状态机,也就是 State Machine ,不是指一台实际机器,而是指一个数学模型。说白了,一般就是指一张状态转换图。
举例
以物理课学的灯泡图为例,就是一个最基本的小型状态机
什么是状态机?用C语言实现进程5状态模型
可以画出以下的状态机图
什么是状态机?用C语言实现进程5状态模型
这里就是两个状态:①灯泡亮,②灯泡灭 如果打开开关,那么状态就会切换为 灯泡亮 。灯泡亮 状态下如果关闭开关,状态就会切换为 灯泡灭。
状态机的全称是有限状态自动机,自动两个字也是包含重要含义的。给定一个状态机,同时给定它的当前状态以及输入,那么输出状态时可以明确的运算出来的。例如对于灯泡,给定初始状态灯泡灭 ,给定输入“打开开关”,那么下一个状态时可以运算出来的。
四大概念
下面来给出状态机的四大概念。
**State ,状态。**一个状态机至少要包含两个状态。例如上面灯泡的例子,有 灯泡亮和 灯泡灭两个状态。
**Event ,事件。**事件就是执行某个操作的触发条件或者口令。对于灯泡,“打开开关”就是一个事件。
**Action ,动作。**事件发生以后要执行动作。例如事件是“打开开关”,动作是“开灯”。编程的时候,一个 Action 一般就对应一个函数。
**Transition ,变换。**也就是从一个状态变化为另一个状态。例如“开灯过程”就是一个变换。
状态机
#什么是状态机?
定义:
状态机是 “”有限状态自动机的简称“” 。
先来解释什么是“状态”( State ):
现实事物是有不同状态的,例如一个LED等,就有 亮 和 灭两种状态。我们通常所说的状态机是有限状态机,也就是被描述的事物的状态的数量是有限个,例如LED灯的状态就是两个 亮和 灭。
状态机,也就是 State Machine ,不是指一台实际机器,而是指一个数学模型。说白了,一般就是指一张状态转换图。
举例
以物理课学的灯泡图为例,就是一个最基本的小型状态机
什么是状态机?用C语言实现进程5状态模型
可以画出以下的状态机图
什么是状态机?用C语言实现进程5状态模型
这里就是两个状态:①灯泡亮,②灯泡灭 如果打开开关,那么状态就会切换为 灯泡亮 。灯泡亮 状态下如果关闭开关,状态就会切换为 灯泡灭。
状态机的全称是有限状态自动机,自动两个字也是包含重要含义的。给定一个状态机,同时给定它的当前状态以及输入,那么输出状态时可以明确的运算出来的。例如对于灯泡,给定初始状态灯泡灭 ,给定输入“打开开关”,那么下一个状态时可以运算出来的。
四大概念
下面来给出状态机的四大概念。
**State ,状态。**一个状态机至少要包含两个状态。例如上面灯泡的例子,有 灯泡亮和 灯泡灭两个状态。
**Event ,事件。**事件就是执行某个操作的触发条件或者口令。对于灯泡,“打开开关”就是一个事件。
**Action ,动作。**事件发生以后要执行动作。例如事件是“打开开关”,动作是“开灯”。编程的时候,一个 Action 一般就对应一个函数。
**Transition ,变换。**也就是从一个状态变化为另一个状态。例如“开灯过程”就是一个变换。
本文标签: 状态机
版权声明:本文标题:状态机 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/IT/1687327009a89937.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论