c++教程 有限状态机在实际中究竟有什么用处? 怎么感觉都没有用过?
有限状态机在实际中究竟有什么用处? 怎么感觉都没有用过?
在数字电路系统中,有限状态机是一种十分重要的时序逻辑电路模块。
它对数字系统的设计具有十分重要的作用。有限状态机是指输出取决于过去输入部分和当前输入部分的时序逻辑电路。一般来说,除了输入部分和输出部分外,有限状态机还含有一组具有“记忆”功能的寄存器,这些寄存器的功能是记忆有限状态机的内部状态,它们常被称为状态寄存器。在有限状态机中,状态寄存器的的下一个状态不仅与输入信号有关,而且还与该寄存器的当前状态有关,因此有限状态机又可以认为是组合逻辑和寄存器逻辑的一种组合。其中,寄存器逻辑的功能是存储有限状态机的内部状态;而组合逻辑又可以分为次态逻辑和输出逻辑两部分,次态逻辑的功能是确定有限状态机的下一个状态,输出逻辑的功能是确定有限状态机的输出。有限状态自动机是干什么的?
一样的。这个差异来源于,从英文到中文的翻译。Finite state machine对应于有限状态机; Finite automata对应于有限状态自动机。值得注意的是,finite automata不能写成finite state automata。 Automata直译为自动机, 而它的修饰词Finite所包含的意思是有限状态的意思。所以,finite automata翻译成有限自动机和有限状态自动机都可以,看约定俗成了。
自动机和状态机有什么区别?
应该说有限状态自动机属于一种特殊的有限状态机,它的输出只限于{0,1},而且输出是1的状态是“接受状态”;所以等价地可以用是否接受状态唯一区别输出是0还是1,因此就可以省略FSM的输出了。 可以粗略地这样看,一般的有限状态机就像一个程序,有输入有输出(例如计算器);而有限状态自动机只判断True还是False。
有限状态机的状态编码风格主要有哪三种?
有限状态机(以下用FSM指代)是一种算法思想,简单而言,有限状态机由一组状态、一个初始状态、输入和根据输入及现有状态转换为下一个状态的转换函数组成。在Gof的23种设计模式里的state模式是一种面向对象的状态机思想,可以适应非常复杂的状态管理。
有限状态机和无限状态机有什么不同?
无限状态机不知道是否正规的说法,从状态机上理解就是输出取决于输入与当前状态,但是当前状态是无限的,不能确定其个数,比如人物的位置。
有限状态机可以确定状态的个数,比如人物的状态。有限状态机系统在嵌入式软件中是个什么地位?
有限状态机是嵌入式软件的一种结构。
有限状态机是实时系统设计中一种重要的,容易建立的,应用比较广泛的,以描述控制特性为主的建模方法,它可以应用于从系统分析到设计的所有阶段。 有限状态机系统优点:简单易用,状态间关系直观看到,便于编程;可以快速执行;只是通过改变输出功能来改变机器的响应。缺点:任何时刻系统只能有一个状态,无法表示并发性,不能描述异步并发系统;在系统部件多时,状态数随之增加,导致复杂性显著增长;对于大的应用系统,难于调试。 —— 转自
http://blog.csdn.net/chinaunixj/article/details/7352617
虽然如此,个人认为,有限状态机虽然不能用于表示并发和描述异步这一点显而易见,但是仍然还是可以用于实现异步并发系统。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。