logo

Moore Makinesi

Moore makinesi, bir sonraki duruma mevcut durum ve mevcut giriş sembolü tarafından karar verilen sonlu durumlu bir makinedir. Belirli bir andaki çıkış sembolü yalnızca makinenin mevcut durumuna bağlıdır. Moore makinesi 6 demet (Q, q0, ∑, O, δ, λ) ile tanımlanabilir; burada,

 Q: finite set of states q0: initial state of machine ∑: finite set of input symbols O: output alphabet δ: transition function where Q × ∑ → Q λ: output function where Q → O 

Örnek 1:

Moore Makinesi için durum diyagramı

Moore Makinesi

Moore Makinesi için geçiş tablosu:

ms word hızlı erişim araç çubuğu
Moore Makinesi

Yukarıdaki Moore makinesinde çıkış, / ile ayrılmış her giriş durumuyla temsil edilir. Moore makinesinin çıkış uzunluğu girişten 1 kat daha büyüktür.

Giriş: 010

Geçiş: δ (q0,0) => δ(q1,1) => δ(q1,0) => q2

Çıktı: 1110(q0 için 1, q1 için 1, yine q1 için 1, q2 için 0)

Örnek 2:

Belirli bir ikili sayının 1'e tümleyenini üretecek bir Moore makinesi tasarlayın.

Çözüm: Belirli bir ikili sayının 1'e tümleyenini oluşturmak için basit mantık şudur: Giriş 0 ise çıkış 1 olacaktır ve giriş 1 ise çıkış 0 olacaktır. Bu, üç durum olduğu anlamına gelir. Bir durum başlangıç ​​durumudur. İkinci durum 0'ları girdi olarak alıp 1 olarak çıktı üretmektir. Üçüncü durum ise 1'leri girdi olarak alıp çıktıyı 0 olarak üretmektir.

Dolayısıyla Moore makinesi şöyle olacaktır:

Moore Makinesi

Örneğin, 1011 ikili sayısını alın ve ardından

Giriş 1 0 1 1
Durum q0 q2 q1 q2 q2
Çıktı 0 0 1 0 0

Böylece 1011'in 1'e tümleyeni olarak 00100 elde ederiz, ilk 0'ı ihmal edebiliriz ve elde ettiğimiz çıktı 1011'in 1'in tümleyeni olan 0100 olur. İşlem tablosu aşağıdaki gibidir:

Moore Makinesi

Böylece Moore makinesi M = (Q, q0, ∑, O, δ, λ); burada Q = {q0, q1, q2}, ∑ = {0, 1}, Ö = {0, 1}. geçiş tablosu δ ve λ fonksiyonlarını gösterir.

Örnek 3:

Bir ikili giriş dizisi için bir Moore makinesi tasarlayın; öyle ki, eğer bir alt dizgisi (101) varsa, makine çıktısı A, eğer girdi alt dizgesi (110) varsa, çıktısı B'dir, aksi halde çıktısı C'dir.

Çözüm: Böyle bir makine tasarlamak için iki koşulu kontrol edeceğiz, bunlar 101 ve 110. 101 alırsak çıktı A, 110'u tanırsak çıktı B olacaktır. Diğer stringler için çıktı şu şekilde olacaktır: C.

Kısmi diyagram şöyle olacaktır:

harita metni
Moore Makinesi

Şimdi her durum için 0'ların ve 1'lerin olasılıklarını ekleyeceğiz. Böylece Moore makinesi şu hale gelir:

Moore Makinesi

Örnek 4:

Bir giriş dizesinin çift sayıda veya tek sayıda 1 içerip içermediğini belirleyen bir Moore makinesi oluşturun. Dizede çift sayıda 1 varsa makine çıktı olarak 1'i, aksi halde 0'ı vermelidir.

Çözüm:

Moore makinesi şöyle olacaktır:

Moore Makinesi

Bu gerekli Moore makinesidir. Bu makinede, q1 durumu tek sayıdaki 1'leri, q0 durumu ise çift sayıdaki 1'leri kabul etmektedir. Sıfır sayısında herhangi bir kısıtlama yoktur. Dolayısıyla 0 girişi için her iki duruma da kendi kendine döngü uygulanabilir.

Örnek 5:

Giriş alfabesi {0, 1} ve çıkış alfabesi {Y, N} ile bir Moore makinesi tasarlayın; bu makine, eğer giriş dizisi bir alt dizi olarak 1010 içeriyorsa çıktı olarak Y üretir, aksi halde çıktı olarak N üretir.

Çözüm:

işaretlemede altı çizili

Moore makinesi şöyle olacaktır:

Moore Makinesi