Transcript Slayt 1

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.
n
n
Yani
f ;
m 
M

i1
i

i1
i
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
0
0
mo
x’y’
0
1
m1
x’y
1
0
m2
xy’
1
1
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
0
0
Mo
x+y
0
1
M1
x+y’
1
0
M2
Y’+x
1
1
M3
x’+y’
ÖRNEK:

x
y
F
0
0
0
0
1
1
1
0
0
1
1
1
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?
ÖRNEK:
x
y
F
0
0
0
0
1
1
1
0
0
1
1
1
Ö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.
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

x
Aşağıda verilen iki değişkenli fonksiyonu
karnough diyagramına yerleştirelim.
y
Minteri
mler
F
y
0
1
0
0
1
1
0
1
x
0
0
x’y’
0
0
1
x’y
1
1
0
xy’
0
1
1
xy
1
KARNOUGH DİYAGRAMLARI

x
Aşağıda verilen üç değişkenli fonksiyonu
karnough diyagramına yerleştirelim.
y
z
Minte
rim
F
xy
0
0
0
x’y’z’
0
0
0
1
x’y’z
1
0
1
0
x’yz’
0
0
1
1
x’yz
1
1
0
0
xy’z’
1
1
0
1
xy’z
1
1
1
0
xyz’
0
1
1
1
xyz
0
00
01
11
10
0
0
0
0
1
1
1
1
0
1
z
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
F
0
0
0
0
1
1
1
0
0
1
1
1
x/y
0
1
0
0
1
1
0
1
KARNOUGH DİYAGRAMLARI

Aşağıdaki fonksiyonun Karnough diyagramına
bakarak fonksiyonu yazınız. F=x’+y
x
y
F
0
0
1
0
1
1
1
0
0
1
1
1
x/y
0
1
0
1
1
1
0
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.
xy
00
01
11
10
0
1
0
1
1
1
0
1
1
0
z

F=y’z’+xy+yz bulunur.
Soru 1: Aşağıdaki fonksiyonu karnough
diyagramı ile indirgeyiniz.
1.Koşul
2. koşul
3. koşul
A>50(x)
B>50(y)
C>50(z)
0
0
0
0
0
0
1
1
0
1
0
0
0
1
1
1
1
0
0
0
1
0
1
1
1
1
0
1
1
1
1
1
xy
sonuç
F=xy+z
F=(A>50 ve B>50)
veya (C>50) bulunur.
00
01
11
10
0
0
0
1
0
1
1
1
1
1
z
Soru 2: Aşağıdaki fonksiyonu karnough
diyagramı ile indirgeyiniz.
1.Koşul
2. koşul
3. koşul
A>=45(x)
B>=50(y)
C>65(z)
0
0
0
1
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
0
1
0
1
0
1
1
0
0
1
1
1
1
xy
sonuç
F=x’+yz
=değil(A>=45)veya
(B>=50 ve C>65)
Bulunur.
00
01
11
10
0
1
1
0
0
1
1
1
1
0
z