2020-10-31 21:16:07
图灵机是计算机底层采用的计算模型,可视为等价于任何有限逻辑数学过程的终极强大逻辑机器;状态机(有限状态机)则是表示有限个状态及其转换和动作的数学模型,用于描述对象生命周期内的状态序列及事件响应。以下是具体说明:
图灵机字符集:由有限个字符构成。
纸带:有起始位置,分成一格一格,每格能写一个字符,可向一方无限延伸。
读写头:可以在纸带上一格一格左右移动,进行读写操作。
状态集:由有限个状态构成。
规则集:由有限个转换规则构成,每条规则根据图灵机当前所在状态和读写头当前位置纸带上的内容,决定纸带当前位置的改写字符、读写头的移动方向(向左、向右或不动)以及图灵机的新状态。
状态有限性:系统在不同阶段呈现不同运行状态,这些状态是有限的、不重叠的,某一时刻系统一定处于其中一个状态。
输入响应性:系统在特定状态下接收允许的输入,产生可能的响应,并转换到可能的状态。
State(状态):一个状态机至少包含两个状态,状态一般成对存在,如页面中按钮的点击和未点击状态。
Event(事件):执行某个操作的触发条件或口令,例如鼠标点击按钮就是一个事件。
Guard(条件):状态机响应外部消息时,除判断当前状态,还需判断相关条件是否成立,这种判断称为Guard,它通过允许或禁止某些操作来影响状态机行为。
Action(动作):执行操作或事件发生后要执行的动作,在程序中,一个Action一般对应一个函数,如鼠标点击按钮后发生的事情。
Transition(转换):从一个状态变化为另一个状态,如按钮从未点击到点击的状态变化。引起状态转换的事件被称为触发事件或触发。