区分理论计算机科学(TOC)中的Mealy机和Moore机


Mealy机

在Mealy机中,输出符号取决于当前输入符号和机器的当前状态。

在Mealy机中,输出以每个输入符号表示,每个状态用“/”分隔。

Mealy机可以用六元组 (Q, q0, Σ, O, δ, λ') 描述

其中:

  • Q:有限状态集。
  • q0:机器的初始状态。
  • Σ:有限输入字母集。
  • O:输出字母集。
  • δ:状态转移函数,Q × Σ → Q。
  • λ':输出函数,Q × Σ → O。

在Mealy机中,输出以每个输入符号表示,每个状态用“/”分隔。

Mealy机的输出长度等于输入长度。

Moore机

Moore机是一种有限状态机,其中下一个状态由当前状态和当前输入符号决定。

给定时间的输出符号仅取决于机器的当前状态。

Moore机有六元组 (Q, q0, Σ, O, δ, λ)

其中:

  • Q:有限状态集。
  • q0:机器的初始状态。
  • Σ:有限输入符号集。
  • O:输出字母集。
  • δ:状态转移函数,Q × Σ → Q。
  • λ':输出函数,Q → O。

区别

Mealy机和Moore机的主要区别如下:

Mealy机Moore机
输出取决于当前状态和当前输入。输出仅取决于当前状态。
如果输入改变,输出也会改变。如果输入改变,输出不会改变。
需要较少的的状态数。需要较多的状态数。
异步输出生成。同步输出和状态生成。
输出位于转移上。输出位于状态上。
设计较为困难。设计较为容易。

更新于:2021年6月15日

15K+浏览量

开启你的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.