BİLGİSAYAR MÜHENDİSLİĞİNE GİRİŞ Yrd. Doç. Dr. Pakize ERDOĞMUŞ 2011-2012
BOOLE FONKSİYONLARININ KARNOUGH DİYAGRAMLARI İLE İNDİRGENMESİ
Boole Fonksiyonlarının İndirgemesi Boole fonksiyonlarının donanım olarak gerçekleştirileceği düşünülürse maliyet ve karmaşıklığı azaltmak için ne kadar sade bir fonksiyon elde edilirse daha iyi olacaktır. İşte bu amaçla fonksiyonların indirgenmesi için çeşitli yöntemler geliştirilmiştir. Bunlardan bir tanesi de Karnough Diyagramları yöntemidir. Bu diyagramlardan önce;
Boole Fonksiyonlarının İndirgemesi Bir Boole fonksiyonlarının ifade şekillerini görelim. Bir Boole fonksiyonu Fonksiyonun değerinin 1 olduğu minterimler toplamı veya Fonksiyonun değerinin sıfır olduğu maksterimler çarpımı ile ifade edilir. Yani ;
Boole Fonksiyonlarının İndirgemesi Minterimler Bir fonksiyonun bağlı olduğu değişkenlerin çarpımlarından oluşan herbir terime minterim denir. Örneğin x ve y’ye bağlı bir fonksiyonun 4 minterimi olacaktır. x y minterim İfadesi mo x’y’ 1 m1 x’y m2 xy’ m3 xy
Boole Fonksiyonlarının İndirgemesi Maksterimler Bir fonksiyonun bağlı olduğu değişkenlerin toplamlarından oluşan herbir terime Maksterim denir. Maksterimler, değişkenin 0 olduğu yerde kendi, 1 olduğu yerde tümleyeni kullanılarak yazılır.. x y Maksterim İfadesi Mo x+y 1 M1 x+y’ M2 Y’+x M3 x’+y’
ÖRNEK: Yanda verilen f fonksiyonunu minterimler toplamı ve maksterimler çarpımı ile ifade ediniz. Maksterimler çarpımını Bool Cebri dağılma özelliklerini kullanarak açınız ve minterimler toplamını elde etmeye çalışınız. Acaba minterimler toplamı sadeleşiyor mu? x y F 1
ÖRNEK: Önce minterimler toplamı şeklinde yazalım. F=x’y+xy=y(x’+x)=y Maksterimler çarpımı: F=(x+y)(x’+y)=xx’+xy+ yx’+yy=0+xy+yx’+y =y(x+x’)+y=y+y=y olur. x y F 1
KARNOUGH DİYAGRAMLARI Fonksiyonları Boole Cebri kurallarına göre indirgemek her zaman kolay olmayabilir. Bu sebeple Karnough diyagramları kullanılır. N değişkenli bir fonksiyonun 2^N adet terimi olacaktır. Örneğin N=3 için 000,001,010,011,100,101,110,111 8 adet terim mevcuttur. Karnough diyagramları da 2^N adet göz içerir.
KARNOUGH DİYAGRAMLARI N=3 için Karnough diyagramları 8 gözlüdür. Karnough diyagramlarında dikkat edilecek bir nokta minterimler her seferinde sadece 1 değişken değişecek şekilde dizilir.
KARNOUGH DİYAGRAMLARI Aşağıda verilen iki değişkenli fonksiyonu karnough diyagramına yerleştirelim. y x 1 x y Minterimler F x’y’ 1 x’y xy’ xy
KARNOUGH DİYAGRAMLARI Aşağıda verilen üç değişkenli fonksiyonu karnough diyagramına yerleştirelim. x y z Minterim F x’y’z’ 1 x’y’z x’yz’ x’yz xy’z’ xy’z xyz’ xyz xy z 00 01 11 10 1
KARNOUGH DİYAGRAMLARI Karnough diyagramında tablonun ilk satır ve sütunlarına fonksiyonun değişkeninin alacağı değerler(minterimler) yazılır. İki değişkenli bir fonksiyonun 4 minterimi vardır. Bu minterimlerde fonksiyonun 1 olduğu değerler yazılarak diyagram tamamlanır. Fonksiyon indirgenirken ise aşağıdaki kurallar dikkate alınır:
FONKSİYONLARIN KARNOUGH DİYAGRAMI İLE İNDİRGENMESİ Karnough diyagramında indirgeme yapabilmek için minterim komşuluğu aranır. Yani iki ve ikinin katları sayısınca komşu minterimler 1 değerine sahip ise indirgenir ve sonucu yazılır.
KARNOUGH DİYAGRAMLARI Örneğin aşağıdaki fonksiyonun Karnough diyagramına bakılırsa iki 1 komşudur. X’değişsede y değişmemektedir ve F=y’dir. x/y 1 x y F 1
KARNOUGH DİYAGRAMLARI Aşağıdaki fonksiyonun Karnough diyagramına bakarak fonksiyonu yazınız. F=x’+y x/y 1 x y F 1
İSBAT: Fonksiyonu minterimler toplamı olarak yazarsak; F=x’y’+x’y+xy=x’y’+x’y+x’y+xy=x’(y’+y)+y(x+x’)=x’+y bulunur.
SORU: Aşağıdaki fonksiyonun Karnough diyagramını çizerek indirgeyiniz. F=y’z’+xy+yz bulunur. xy z 00 01 11 10 1
Soru 1: Aşağıdaki fonksiyonu karnough diyagramı ile indirgeyiniz. 1.Koşul 2. koşul 3. koşul sonuç A>50(x) B>50(y) C>50(z) 1 F=xy+z F=(A>50 ve B>50) veya (C>50) bulunur. xy z 00 01 11 10 1
Soru 2: Aşağıdaki fonksiyonu karnough diyagramı ile indirgeyiniz. 1.Koşul 2. koşul 3. koşul sonuç A>=45(x) B>=50(y) C>65(z) 1 F=x’+yz =değil(A>=45)veya (B>=50 ve C>65) Bulunur. xy z 00 01 11 10 1