先决条件:Mealy 和 Moore 机,Mealy 机和 Moore 机之间的区别
在本文中,我们将看到一些带有输出的有限自动机的设计,即摩尔机和米利机。
问题:构建以二进制数 {0, 1} 作为输入并产生余数模“2”作为输出的机器,即当 {0, 1} 上的二进制输入的等效十进制数除以 2 时,它给出输出为余数。
认为,
Ε = {0, 1} and
Δ = {0, 1}
其中,E 和 Δ 分别是输入和输出字母表。
所需的摩尔机构造如下:
在上图中,初始状态 ‘X’ 在将 ‘0’ 作为输入时保持其自身状态并打印 ‘0’ 作为输出,在获得 ‘1’ 作为输入时它传输到状态 ‘Y’ ‘ 并打印 ‘1’ 作为其余状态的输出,依此类推。
例如,当输入字符串为 ’10’ 时,Moore 机器产生 0 作为输出,因为二进制输入 ’10’ 的十进制等效值为 2,2 除以 2 为 0,即余数为 0。因此最终高于 Moore机器可以很容易地产生余数模“2”作为输出,即当 {0, 1} 上的二进制输入的等效十进制数除以 2 时,它给出输出作为它的余数。
所需的 Mealy 机器构造如下:
在上图中,初始状态 ‘X’ 在将 ‘0’ 作为输入时保持其自身状态并打印 ‘0’ 作为输出,在获得 ‘1’ 作为输入时它传输到状态 ‘Y’ ‘ 并打印 ‘1’ 作为输出。状态 ‘Y’ 在获得 ‘1’ 作为输入时它保持在自身的状态并打印 ‘1’ 作为输出,在获得 ‘0’ 作为输入时它返回到初始状态 ‘X’ 并打印 ‘ 0’ 作为输出。
例如,当输入字符串为 ’10’ 时,Mealy 机器产生 0 作为输出,因为二进制输入 ’10’ 的十进制等价物为 2,2 除以 2 为 0,即余数为 0。因此最终高于 Mealy机器可以很容易地产生余数模“2”作为输出,即当 {0, 1} 上的二进制输入的等效十进制数除以 2 时,它给出输出作为它的余数。