📅  最后修改于: 2020-12-17 07:43:17             🧑  作者: Mango
在Moore机器中,输出与每个状态相关联,而在粉状机器中,输出沿带有输入符号的边给出。的摩尔机和米利机装置两者的机器的等价生成用于同一输入的字符串相同的输出字符串。
我们无法直接将摩尔机转换为等效的Mealy机,因为对于给定的输入,Moore机的长度比Mealy机长一倍。为了将Moore机器转换为Mealy机器,将状态输出符号分配到输入符号路径中。我们将使用以下方法将Moore机器转换为Mealy机器。
令M =(Q,∑,δ,λ,q0)为摩尔机器。等效的Mealy机器可由M'=(Q,∑,δ,λ',q0)表示。输出函数λ'可以通过以下公式获得:
λ' (q, a) = λ(δ(q, a))
将以下摩尔机转换为等效的Mealy机。
解:
给定的摩尔机的转换表如下:
Q | a | b | Output(λ) |
---|---|---|---|
q0 | q0 | q1 | 0 |
q1 | q0 | q1 | 1 |
等效的Mealy机器可以按以下方式获得:
λ' (q0, a) = λ(δ(q0, a))
= λ(q0)
= 0
λ' (q0, b) = λ(δ(q0, b))
= λ(q1)
= 1
状态q1的λ如下:
λ' (q1, a) = λ(δ(q1, a))
= λ(q0)
= 0
λ' (q1, b) = λ(δ(q1, b))
= λ(q1)
= 1
因此,Mealy机器的转换表可以绘制如下:
等效的Mealy机器将是
注意:在Moore机器中,输出序列的长度为“ n + 1”,在Mealy机器中为“ n”。
将给定的Moore机器转换为等效的Mealy机器。
解:
给定的摩尔机的转换表如下:
Q | a | b | Output(λ) |
---|---|---|---|
q0 | q1 | q0 | 0 |
q1 | q1 | q2 | 0 |
q2 | q1 | q0 | 1 |
等效的Mealy机器可以按以下方式获得:
λ' (q0, a) = λ(δ(q0, a))
= λ(q1)
= 0
λ' (q0, b) = λ(δ(q0, b))
= λ(q0)
= 0
状态q1的λ如下:
λ' (q1, a) = λ(δ(q1, a))
= λ(q1)
= 0
λ' (q1, b) = λ(δ(q1, b))
= λ(q2)
= 1
状态q2的λ如下:
λ' (q2, a) = λ(δ(q2, a))
= λ(q1)
= 0
λ' (q2, b) = λ(δ(q2, b))
= λ(q0)
= 0
因此,Mealy机器的转换表可以绘制如下:
等效的Mealy机器将是
将给定的Moore机器转换为等效的Mealy机器。
Q | a | b | Output(λ) |
---|---|---|---|
q0 | q0 | q1 | 0 |
q1 | q2 | q0 | 1 |
q2 | q1 | q2 | 2 |
解:
给定问题的事务图可以绘制为:
等效的Mealy机器可以按以下方式获得:
λ' (q0, a) = λ(δ(q0, a))
= λ(q0)
= 0
λ' (q0, b) = λ(δ(q0, b))
= λ(q1)
= 1
状态q1的λ如下:
λ' (q1, a) = λ(δ(q1, a))
= λ(q2)
= 2
λ' (q1, b) = λ(δ(q1, b))
= λ(q0)
= 0
状态q2的λ如下:
λ' (q2, a) = λ(δ(q2, a))
= λ(q1)
= 1
λ' (q2, b) = λ(δ(q2, b))
= λ(q2)
= 2
因此,Mealy机器的转换表可以绘制如下:
等效的Mealy机器将是