Aljabar Boolean
3.1 Pendahuluan
43
Rangkaian digital (dua keadaan), karena sinyal masukan atau keluaran
hanya berupa tegangan” high” atau “low” (1 atau 0).
Setiap keluarannya tergantung sepenuhnya pada sinyal yang diberikan pada
masukan-masukannya
Misalkan terdapat :
- Dua operator biner : + dan
- Sebuah operator uner : ’
- B : himpunan yang didefinisikan pada opeartor +, , dan ’
- 0 dan 1 adalah dua elemen yang berbeda dari B.
Tupel
(B, +, , ’)
disebut aljabar Boolean jika untuk setiap a, b, c B berlaku aksioma-
aksioma atau postulat Huntington berikut:
1. Closure: (i) a + b B
(ii) a b B
2. Identitas: (i) a + 0 = a
(ii) a 1 = a
3. Komutatif: (i) a + b = b + a
(ii) a b = b . a
4. Distributif: (i) a (b + c) = (a b) + (a c)
(ii) a + (b c) = (a + b) (a + c)
5. Komplemen1: (i) a + a’ = 1
(ii) a a’ = 0
44
3.2 Aljabar Boolean Dua-Nilai
a b ab a b a+b a a’
0 0 0 0 0 0 0 1
0 1 0 0 1 1 1 0
1 0 0 1 0 1
1 1 1 1 1 1
45
Karena kelima postulat Huntington dipenuhi, maka terbukti bahwa B = {0, 1}
bersama-sama dengan operator biner + dan operator komplemen ‘
merupakan aljabar Boolean.
Contoh:
0
1
a
b
c
a+b
ab
a’ (b + c)
a b’ + a b c’ + b’, dan sebagainya
0’ (1 + 0) = 1 1 = 1
Dua ekspresi Boolean dikatakan ekivalen (dilambangkan dengan ‘=’)
jika keduanya mempunyai nilai yang sama untuk setiap pemberian
nilai-nilai kepada n peubah.
Contoh:
a (b + c) = (a . b) + (a c)
46
Penyelesaian:
(i) a(b + c) = ab + ac
(ii) a + bc = (a + b) (a + c)
(iii) a 0 , bukan a0
Contoh.
(i) (a 1)(0 + a’) = 0 dualnya (a + 0) + (1 a’) = 1
(ii) a(a‘ + b) = ab dualnya a + a‘b = a + b
47
3. Hukum komplemen: 4. Hukum dominansi:
(i) a + a’ = 1 (i) a 0 = 0
(ii) aa’ = 0 (ii) a + 1 = 1
5. Hukum involusi: 6. Hukum penyerapan:
(i) (a’)’ = a (i) a + ab = a
(ii) a(a + b) = a
7. Hukum komutatif: 8. Hukum asosiatif:
(i) a + b = b + a (i) a + (b + c) = (a + b) + c
(ii) ab = ba (ii) a (b c) = (a b) c
9. Hukum distributif: 10.Hukum De Morgan:
(i) a + (b c) = (a + b) (a + c) (i) (a + b)’ = a’b’
(ii) a (b + c) = a b + a c (ii) (ab)’ = a’ + b’
11.Hukum 0/1
(i) 0’ = 1
(ii) 1’ = 0
48
Contoh : (1, 0, 1) yang berarti x = 1, y = 0, dan z = 1, sehingga
f(1, 0, 1) = 1 0 1 + 1’ 0 + 0’ 1 = 0 + 0 + 1 = 1 .
Latihan :
49
3.7 Komplemen Fungsi
50
Setiap minterm/maxterm mengandung literal lengkap
Minterm Maxterm
x y Suku Lambang Suku Lambang
0 0 x’y’ m0 x+y M0
0 1 x’y m1 x + y’ M1
1 0 xy’ m2 x’ + y M2
1 1 xy m3 x’ + y’ M3
Minterm Maxterm
x Y z Suku Lambang Suku Lambang
0 0 0 x’y’z’ m0 x+y+z M0
0 0 1 x’y’z m1 x + y + z’ M1
0 1 0 x‘y z’ m2 x + y’+z M2
0 1 1 x’y z m3 x + y’+z’ M3
1 0 0 x y’z’ m4 x’+ y + z M4
1 0 1 x y’z m5 x’+ y + z’ M5
1 1 0 x y z’ m6 x’+ y’+ z M6
1 1 1 xyz m7 x’+ y’+ z’ M7
Contoh :
Nyatakan tabel kebenaran di bawah ini dalam bentuk kanonik SOP dan POS.
x Y z f(x, y, z)
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
Penyelesaian:
(a) SOP
Kombinasi nilai-nilai peubah yang menghasilkan nilai fungsi sama
dengan 1 adalah 001, 100, dan 111, maka fungsi Booleannya dalam
bentuk kanonik SOP adalah
51
atau (dengan menggunakan lambang minterm),
f(x, y, z) = m1 + m4 + m7 = (1, 4, 7)
(b) POS
Kombinasi nilai-nilai peubah yang menghasilkan nilai fungsi sama
dengan 0 adalah 000, 010, 011, 101, dan 110, maka fungsi
Booleannya dalam bentuk kanonik POS adalah
f(x, y, z) = M0 M2 M3 M5 M6 = ∏(0, 2, 3, 5, 6)
Penyelesaian:
(a) SOP
x = x(y + y’)
= xy + xy’
= xy (z + z’) + xy’(z + z’)
= xyz + xyz’ + xy’z + xy’z’
y’z = y’z (x + x’)
= xy’z + x’y’z
(b) POS
f(x, y, z) = x + y’z
= (x + y’)(x + z)
x + y’ = x + y’ + zz’
= (x + y’ + z)(x + y’ + z’)
52
x + z = x + z + yy’
= (x + y + z)(x + y’ + z)
Latihan
Nyatakan fungsi Boolean di bawah ini dalam bentuk kanonik SOP dan POS :
a. f(x, y) = x + y’
b. f(x, y, z) = y + xz’
c. f(x, y, z) = x (y’ + z’)
d. f(w, x, y, z) = wx’ + y’
Kesimpulan: mj’ = Mj
53
Contoh. Dari fungsi di bawah ini :
f(x, y, z) = (0, 2, 4, 5) dan
g(w, x, y, z) = (1, 2, 5, 6, 10, 15)
Nyatakan dalam bentuk SOP.
Penyelesaian:
f(x, y, z) = (1, 3, 6, 7)
Penyelesaian:
(a) SOP
f(x, y, z) = y’ + xy + x’yz’
= y’ (x + x’) (z + z’) + xy (z + z’) + x’yz’
= (xy’ + x’y’) (z + z’) + xyz + xyz’ + x’yz’
= xy’z + xy’z’ + x’y’z + x’y’z’ + xyz + xyz’ + x’yz’
(b) POS
f(x, y, z) = M3 = x + y’ + z’
Bentuk Baku
Contohnya,
54
3.10 Aplikasi Aljabar Boolean
1. Jaringan Pensaklaran (Switching Network)
Saklar adalah objek yang mempunyai dua buah keadaan: buka dan tutup.
1. a x b
2. a x y b
3. a x
c
b y
Lampu
A B
Sumber tegangan
A Lampu
B
Sumber Tegangan
55
Contoh. Nyatakan rangkaian pensaklaran pada gambar di bawah ini dalam
ekspresi Boolean.
x x
xy x+ y x x'
y y
x
xy
y
xy+x'y
x'
x
x'y
y
56
x xy
y
xy+x'y
x'
x'y
xy
xy+x'y
x'
x'y
Gerbang turunan
Gerbang NAND Gerbang XOR
x x
(xy)' x +y
y y
x x
(x+y)' (x + y)'
y y
x x x+y
(x + y)' ekivalen dengan (x + y)'
y y
x
x' (x+y)'
x'y' ekivalen dengan y
y'
57
Latihan :
Gambarkan fungsi di bawah ini dalam bentuk rangkaian digital elektronik !
a. f(x, y) = (x’y + xy’) + x’y’
b. g(x, y, z) = xy’ + {x’z’ + (x’y’z + x’y’)}
c. h(w, x, y, z) = {(w’x’yz’ + (wx’y’z + z’)) + (w’x’yz’ + wx’y’z)} + y
x
x' (xy)'
x' + y' ekivalen dengan
y
y'
disederhanakan menjadi
f(x, y) = x’ + y’
58
= x’z(y’ + y) + xy’ (Hukum Distributif)
= x’z. 1 + xy’ (Hukum Komplemen)
= x’z + xy’ (Hukum Identitas)
Latihan :
1. Gambarkan peta Karnaugh untuk fungsi f(x,y) = xy + x’y + xy’
2. Diberikan fungsi Boolean yang direpresentasikan dengan table
kebenaran. Petakan fungsi tersebut ke peta Karnaugh
59
Latihan :
1. Gambarkan peta Karnaugh untuk fungsi f(x,y,z) = x’yz + x’y’z + xy’z
2. Diberikan fungsi Boolean yang direpresentasikan dengan table
kebenaran. Petakan fungsi tersebut ke peta Karnaugh
x y z f(x,y,z)
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1
3. Gambarkan peta Karnaugh untuk fungsi f(x,y,z) = xz’ + y
Latihan :
1. Gambarkan peta Karnaugh untuk fungsi :
f(w,x,y,z) = wx’y’z + w’xy’z’ + w’xy’z + wx’yz + wxyz
2. Diberikan fungsi Boolean yang direpresentasikan dengan table
kebenaran. Petakan fungsi tersebut ke Peta Karnaugh
60
w x y z f(w,x,y,z)
0 0 0 0 0
0 0 0 1 1
0 0 1 0 0
0 0 1 1 1
0 1 0 0 0
0 1 0 1 0
0 1 1 0 1
0 1 1 1 1
1 0 0 0 0
1 0 0 1 1
1 0 1 0 1
1 0 1 1 1
1 1 0 0 0
1 1 0 1 0
1 1 1 0 1
1 1 1 1 0
3. Gambarkan peta Karnaugh untuk fungsi f(w,x,y,z) = xz’ + y
4. Gambarkan rangkaian digital elektronik dari bentuk kanonik jawaban
soal nomor 3 di atas
61
Sebelum disederhanakan: f(a, b, c, d) = wxy’z’ + wxy’z + wxyz + wxyz’ +
wx’y’z’ + wx’y’z + wx’yz + wx’yz’
yz
00 01 11 10
wx 00 0 0 0 0
01 0 0 0 0
11 1 1 1 1
10 1 1 1 1
yz
00 01 11 10
wx 00 0 1 1 1
01 0 0 0 1
11 1 1 0 1
10 1 1 0 1
62
Jawab: (lihat Peta Karnaugh) f(w, x, y, z) = wy’ + yz’ + w’x’z
Jawab:
Peta Karnaugh untuk fungsi tersebut adalah:
yz
00 01 11 10
x 0 1
1 1 1 1
yz
00 01 11 10
wx 00 0 0 0 0
01 0 1 0 0
11 1 1 1 1
10 1 1 1 1
63
yz
00 01 11 10
wx 00 0 0 0 0
01 0 1 0 0
11 1 1 1 1
10 1 1 1 1
Teknik Penggulungan/rolling :
01 1 0 0 1
11 1 0 0 1
10 0 0 0 0
Jawab: f(w, x, y, z) = xy’z’ + xyz’ ==> belum sederhana
64
Penyelesaian yang lebih minimal:
yz
00 01 11 10
wx 00 0 0 0 0
01 1 0 0 1
11 1 0 0 1
10 0 0 0 0
f(w, x, y, z) = xz’ ===> lebih sederhana
Kelompok berlebihan :
Jika pengelompokan 1 tidak dilakukan secara hati-hati, maka ada
kemungkinan kita membuat kelompok 1 yang tidak perlu. Pengelompokan
yang berlebihan (redundan) ini menghasilkan fungsi Boolean dengan term
yang tidak perlu.
01 0 1 0 0
11 0 1 1 0
10 0 0 1 0
Jawab: f(w, x, y, z) = xy’z + wxz + wyz masih belum sederhana.
65
Contoh : Minimisasi fungsi Boolean f(x, y, z) = x’z + x’y + xy’z + yz
Jawab:
x’z = x’z(y + y’) = x’yz + x’y’z
x’y = x’y(z + z’) = x’yz + x’yz’
yz = yz(x + x’) = xyz + x’yz
1 1 1
Garis pencerminan
66
Peta Karnaugh dari fungsi tersebut adalah:
xyz
000 001 011 010 110 111 101 100
vw 00 1 1 1 1
01 1 1 1 1
11 1 1 1 1
10 1 1
Pada tabel di atas terlihat kondisi ada 2 buah output yang bernilai X (symbol
dari kondisi don't care) yang berarti output yang dapat bernilai 1 (high) atau
bernilai 0 (low).
67
Beberapa kondisi "don't care" yang penting untuk diperhatikan,
1. Jika terdapta kondisi don't care dalam penyederhanaan K-Map,
makakondisi ini bias dianggap 1 (high) atau 0 (low) artinya bias
dimasukkan ke dalam lingkaran dalam proses penyederhanaan atau
bisa tidak dimasukkan kedalam lingkaran.
2. Dalam kondisi tertentu, jika terlalu banyak sel don't care yang
diabaikan, padahal memungkinkan untuk tidak diabaikan dan
dimasukkan ke lingkaran penyederhanan maka hal ini sangatlah kurang
optimal.
3. Dalam membuat lingkaran pada K-map, sebaiknya kita membuat
lingkaran sebanyak mungkin menkaver kondisi don't care
a b c d f(a, b, c, d)
0 0 0 0 1
0 0 0 1 0
0 0 1 0 0
0 0 1 1 1
0 1 0 0 1
0 1 0 1 1
0 1 1 0 0
0 1 1 1 1
1 0 0 0 X
1 0 0 1 X
1 0 1 0 X
1 0 1 1 X
1 1 0 0 X
1 1 0 1 X
1 1 1 0 X
1 1 1 1 X
68
cd
00 01 11 10
ab 00 1 0 1 0
01 1 1 1 0
11 X X X X
10 X 0 X X
69
yz
00 01 11 10
x 0 1 1
1 1 1
x y
x'y
x'y+xy'
xy'
70
(a) f1(w, x, y, z)
yz
00 01 11 10
wx 00
01 1 1 1
11 X X X X
10 1 1 X X
f1(w, x, y, z) = w + xz + xy = w + x(y + z)
(b) f2(w, x, y, z)
yz
00 01 11 10
wx 00 1 1 1
01 1
11 X X X X
10 1 X X
(c) f3(w, x, y, z)
yz
00 01 11 10
wx 00 1 1
01 1 1
11 X X X X
10 1 X X
f3(w, x, y, z) = y’z’ + yz
71
(d) f4(w, x, y, z)
yz
00 01 11 10
wx 00 1 1
01 1 1
11 X X X X
10 1 X X
f4(w, x, y, z) = z’
w x y z
f4
f3
f2
f1
72
1. Nyatakan tiap Minterm dalam n peubah menjadi string bit yang
panjangnya n,dimana peubah komplemen dinyatakan dengan ‘0’.
Peubah yang bukan komplemen dinyatakan dengan ‘1’.
2. Kelompokkan tiap Minterm berdasarkan jumlah ‘1’ yang dimilikinya.
3. Kombinasikan minterm dalam n peubah dengan kelompok lain yang
jumlah ‘1’-nya berbeda satu, sehingga diperoleh bentuk prima (prime-
implicant) yang terdiri dari n-1 peubah. Minterm yang dikombinasikan
diberi tanda “√”.
4. Kombinasikan minterm dalam n peubah dengan kelompok lain yang
jumlah ‘1’-nya berbeda satu, sehingga diperoleh bentuk prima yang
terdiri dari n-2 peubah.
5. Teruskan langkah 4 hingga menemukan bentuk prima yang
sesederhana mungkin.
6. Ambil semua bentuk prima yang tidak bertanda “√”. Buatlah table baru
yang memperlihatkan Minterm dari ekspresi Boolean yang dicakup
oleh bentuk prima tersebut (tandai dengan “x”). setiap minterm harus
dicakup oleh paling sedikit satu buah bentuk prima.
7. Pilih bentuk prima yang memiliki jumlah literal paling sedikit namun
mencakup sebanyak mungkin Minterm dari ekspresi Boolean semula.
Hal ini dapat dilakukan dengan cara berikut:
a. Tandai kolom-kolom yang memiliki satu buah tanda “x” dengan
tanda “*” tersebut. Bentuk prima ini telah dipilih untuk fungsi
Boolean sederhana.
b. Untuk setiap bentuk prima yang telah ditandai “√”, beri tanda
Minterm yang dicakup oleh bentuk prima tersebut dengan tanda
“√” (di garis bawah setelah tanda ‘*’)
c. Periksa apakah masih ada Minterm yang belum dicakup oleh
bentuk prima terpilih. Jika ada, pilih dari bentuk prima yang tersisa
yang mencakup sebanyak mungkin Minterm tersebut. Beri tanda
“√” bentuk prima yang dipilih itu serta Minterm yang dicakupnya.
d. Ulangi langkah c sampai seluruh Minterm sudah dicakup oleh
semua bentuk prima.
Metode Quine-McCluskey biasanya digunakan untuk menyederhanakan
fungsi Boolean yang ekspresinya dalam bentuk SOP, namun metode ini dapat
di modifikasi sehingga juga dapat digunakan untuk ekspresi POS.
73
Contoh :
Sederhanakan fungsi Boolean f (w,x,y,z) = Ʃ (0, 1, 2, 8, 10, 11, 14, 15)
Penyelesaian:
Langkah 1 sampai 5 :
Langkah 6 dan 7 :
Semua bentuk prima di atas sudah mencakup semua minterm dan fungsi
Boolean semula. Dengan demikian, fungsi Boolean hasil penyederhanaan
adalah f (w, x, y, z) = w’ x’ y’ + x’ z’ + w y.
74