📜  Moore 到 Mealy 机器的转换(第 4 组)

📅  最后修改于: 2021-09-27 22:52:24             🧑  作者: Mango

先决条件: Mealy 和 Moore 机,Mealy 机和 Moore 机之间的区别

在本文中,我们将看到 Moore 到 Mealy 机器的转换——
摩尔机的状态转换图:-

以上摩尔机将 {a, b} 上的所有字符串集合作为输入,并将子字符串的数量计算为“ab”,即,在将“ab”作为输入子字符串时,它给出“1”作为输出,从而计算输出’1’,它也将子串的计数作为’ab’。

现在我们需要将上面的摩尔机转换图转化为等价的米利机转换图。所需转换的步骤如下:-

  • Step-1:形成上述摩尔机的状态转移表-

    在上面的转换表中,状态 ‘X’、’Y’ 和 ‘Z’ 保留在第一列中,在获取 ‘a’ 作为输入时,它分别转换到 ‘Y’、’Y’ 和 ‘Y’ 状态,保存在第二列中,并在获得 ‘b’ 作为输入时,它分别转换为 ‘X’、’Z’ 和 ‘X’ 状态,保存在第三列中。在Δ下的第四列中,有第一列状态的对应输出。在表中,箭头(→)表示初始状态。
  • Step-2:从上面的Moore机转换表形成Mealy机的转换表-
    下面的转换表将在上表及其条目的帮助下形成,只需使用第一列状态的相应输出并将它们相应地放置在第二和第三列中即可。

    在上表中,第一列中的状态如 ‘X’ 在将 ‘a’ 作为输入时它进入状态 ‘Y’ 并给出 ‘0’ 作为输出,并在获得 ‘b’ 作为输入时状态 ‘X’ 并给出 ‘0’ 作为输出,对于第一列中的其余状态,依此类推。在表中,箭头(→)表示初始状态。

  • Step-3:最后我们可以借助上面的转换表形成Mealy机的状态转换图。
    所需图如下所示-

    上面的 Mealy 机器将 {a, b} 上的所有字符串集作为输入并将子字符串的数量计算为“ab”,即,在将“ab”作为输入子字符串时,它给出“1”作为输出,从而计算输出’1’,它也将子串的计数作为’ab’。

注意:当从 Moore 转换为 Mealy 机器时,Moore 和 Mealy 机器的状态数保持不变,但在 Mealy 到 Moore 转换的情况下,它不会给出相同的状态数。