You are on page 1of 81

Faculty of Information Technology

Chương 3. Đại số Boole


(Boolean algebra)
PGS.TS. Hoàng Văn Dũng
Email: dunghv@hcmute.edu.vn
Outline

1 Đại số Boole

2 Hàm Boole

3 Mạng các cổng

4 Phương pháp biểu đồ Karnaugh

5 Bài tập và nghiên cứu

ISLab- Intelligent Systems Laboratory 2


Mở đầu
• Xét mạch điện như hình vẽ

Tùy theo cách trạng thái cầu dao A, B, C mà ta sẽ có dòng điện đi


qua MN. Như vậy ta sẽ có bảng giá trị sau

ISLab- Intelligent Systems Laboratory 3


Mở đầu
• Khi mạch điện gồm nhiều cầu dao, làm sao ta có thể
kiểm soát được?
A B C MN
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1

Giải pháp là đưa ra công thức, với mỗi 1 1 0 1


biến được xem như là một cầu dao 1 1 1 1

ISLab- Intelligent Systems Laboratory 4


Đại Số Boole
• Một đại số Boole (A,,) là một tập hợp A   với hai phép
toán , , tức là hai ánh xạ:

: AA → A
(x,y) →xy
và : AA → A
(x,y)→xy
thỏa 5 tính chất sau:

ISLab- Intelligent Systems Laboratory 5


Đại Số Boole
- Tính giao hoán:  x, y A
xy = yx;
xy = yx;

- Tính kết hợp:  x, y, z A - Phần tử trung hòa: xA


(xy) z = x(y z); x1 = 1x = x;
(xy) z = x (y z). x0 = 0x = x.

- Phần tử bù: x A và
- Tính phân phối: x, y, z A 𝑥A
ҧ
x(y z) =(xy) (xz); x  𝑥ҧ = 𝑥ҧ  x = 0;
x (y z) =(xy)  (xz). x  𝑥ҧ = 𝑥ҧ  x = 1.

ISLab- Intelligent Systems Laboratory 6


Đại Số Boole
Ví dụ:
Xét F là tập hợp tất cả các dạng mệnh đề theo n biến p1,
p2,…,pn với hai phép toán hội , phép toán tuyển , trong
đó ta đồng nhất các dạng mệnh đề tương đương.
Khi đó F là một đại số Boole với phần tử 1 là hằng đúng
1, phần tử 0 là hằng sai 0, phần tử bù của dạng mệnh đề E
là dạng mệnh đề bù 𝐸ത

ISLab- Intelligent Systems Laboratory 7


Đại Số Boole
• Xét tập hợp B = {0, 1}. Trên B ta định nghĩa hai
phép toán , như sau:

 0 1  0 1
0 0 0 0 0 1
1 0 1 1 1 1

• Khi đó, B trở thành một đại số Boole

ISLab- Intelligent Systems Laboratory 8


Outline

1 Đại số Boole

2 Hàm Boole

3 Mạng các cổng

4 Phương pháp biểu đồ Karnaugh

5 Bài tập và nghiên cứu

ISLab- Intelligent Systems Laboratory 9


Hàm Boole

Hàm Boole n biến là ánh xạ


f : Bn → B , trong đó B = {0, 1}.

Như vậy hàm Boole n biến là một hàm số có dạng :


f = f(x1,x2,…,xn), trong đó mỗi biến trong x1, x2,…, xn chỉ
nhận hai giá trị 0, 1 và f nhận giá trị trong B = {0, 1}.
Ký hiệu Fn để chỉ tập các hàm Boole biến.

Ví dụ: Dạng mệnh đề E = E(p1,p2,…,pn) theo n biến p1,


p2,…, pn là một hàm Boole n biến.

ISLab- Intelligent Systems Laboratory 10


Bảng chân trị
• Xét hàm Boole n biến f(x1,x2,…,xn)

Vì mỗi biến xi chỉ nhận hai giá trị 0, 1 nên chỉ có 2n trường
hợp của bộ biến (x1,x2,…,xn).

Do đó, để mô tả f, ta có thể lập bảng gồm 2n hàng ghi tất cả


các giá trị của f tùy theo 2n trường hợp của biến. Ta gọi đây là
bảng chân trị của f

ISLab- Intelligent Systems Laboratory 11


Ví dụ

• Xét kết qủa f trong việc thông qua một quyết định dựa vào
3 phiếu bầu x, y, z

• Mỗi phiếu chỉ lấy một trong hai giá trị: 1 (tán thành) hoặc
0 (bác bỏ).

• Kết quả f là 1 (thông qua quyết định) nếu được đa số phiếu


tán thành, là 0 (không thông qua quyết định) nếu đa số
phiếu bác bỏ.

ISLab- Intelligent Systems Laboratory 12


Hàm Boole

• Khi đó f là hàm Boole theo 3 biến x, y, z có bảng


chân trị như sau:

x y z f
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

ISLab- Intelligent Systems Laboratory 13


Các phép toán trên hàm Boole
• Phép cộng Boole : Với f, g  Fn ta định nghĩa tổng
Boole của f và g:
f  g = f + g – fg

 0 1
Suy ra 0 0 1

1 1 1

x = (x1,x2,…,xn) Bn,
(f  g)(x) = f(x) + g(x) – f(x)g(x)

Dễ thấy: f  g  Fn và (f  g)(x) = max{f(x), g(x)}

ISLab- Intelligent Systems Laboratory 14


Các phép toán trên hàm Boole
• Phép nhân Boole :
Với f, g Fn ta định nghĩa tích Boole của f và g
f  g = fg

x=(x1,x2,…,xn)Bn,
(f  g)(x) = f(x)g(x)

Dễ thấy:
f  g Fn và (f  g)(x) = min{f(x), g(x)}

Ta thường viết fg thay cho f  g

ISLab- Intelligent Systems Laboratory 15


Các phép toán trên hàm Boole
• Phép lấy hàm bù:
Với f  Fn ta định nghĩa hàm bù của f như sau:

𝑓ҧ = 1 − 𝑓

ISLab- Intelligent Systems Laboratory 16


Dạng nối rời chính tắc
Dạng nối rời chính tắc của Hàm Boole:
Xét tập hợp các hàm Boole của n biến Fn theo n biến x1, x2,…,xn
• Mỗi hàm Boole 𝑥 hay 𝑥ҧ được gọi là từ đơn.
ത 𝑧, 𝑧,ҧ 𝑡 𝑡ҧ là các từ đơn
𝑥, 𝑥ҧ 𝑦, 𝑦,
• Đơn thức là tích khác không của một số hữu hạn từ đơn.
ത 𝑡,ҧ xyt là các đơn thức
𝑥𝑦𝑧
• Từ tối tiểu là tích khác không của đúng n từ đơn.
ത 𝑡 ҧ là từ tối thiệu
𝑥 𝑦𝑧
• Công thức đa thức là công thức biểu diễn hàm Boole thành tổng
của các đơn thức.
f=𝑥 𝑦𝑦𝑧
ത 𝑡ҧ
• Dạng nối rời chính tắc là công thức biểu diễn hàm Boole thành
tổng của các từ tối tiểu.

ISLab- Intelligent Systems Laboratory 17


Outline

1 Đại số Boole

2 Hàm Boole

3 Mạng các cổng

4 Phương pháp biểu đồ Karnaugh

5 Bài tập và nghiên cứu

ISLab- Intelligent Systems Laboratory 18


Mạng logic (Mạng các cổng)

Ta nói mạng logic trên tổng hợp hay biểu diễn hàm Boole f

ISLab- Intelligent Systems Laboratory 19


Mạng logic
Định nghĩa: Cổng logic là một công cụ trong máy tính
thực hiện các nhiệm vụ đặc thù trong xử lý số liệu
tương ứng với các phép toán trong đại số Boole. Ta
có các phép toán sau:

ISLab- Intelligent Systems Laboratory 20


Mạng logic
• Định nghĩa: Mạng logic gồm nhiều cổng logic liên
kết với nhau theo những quy tắc sau:
▪ Một đường vào có thể tách ra cho nhiều cổng.
▪ Không có đường ngược, nghĩa là đường ra của một cổng
không thể là đường vào của chính nó.

ISLab- Intelligent Systems Laboratory 21


Mạng logic

• NOT:
Bảng chân trị
Kí hiệu cổng
X not X
0 1
1 0
F ( x) = x

Input Output

Nếu đưa mức HIGH vào ngõ vào của cổng, ngõ ra sẽ là
mức LOW và ngược lại.

ISLab- Intelligent Systems Laboratory 22


Mạng logic
AND:

Cổng AND có ít nhất 2 ngõ vào


Ngõ ra là 1 khi tất cả các ngõ vào là 1,
ngược lại là 0

x
x and y x • y , x  y , x & y , xy y
xy

Bảng chân trị X Y X and Y


0 0 0
0 1 0
1 0 0
1 1 1
ISLab- Intelligent Systems Laboratory 23
Mạng logic
OR:
Cổng OR có ít nhất là 2 ngõ vào
Ngõ ra là 1, nếu có một ngõ vào là 1,
ngược lại là 0

x or y x + y , x  y , x| y x xvy
y

X Y X or Y
Bảng chân trị:
0 0 0
0 1 1
1 0 1
1 1 1

ISLab- Intelligent Systems Laboratory 24


Mạng logic
NAND:

Là cổng bù của AND


Có ngõ ra là ngược lại với cổng
AND

X nand Y = not (X and Y) = xy

X Y Z
0 0 1
0 1 1
1 0 1
1 1 0
ISLab- Intelligent Systems Laboratory 25
Mạng logic
NOR:

Là cổng bù của OR
Có ngõ ra ngược với cổng OR

X nor Y = not (X or Y) = x y

X Y Z
0 0 1
0 1 0
1 0 0
1 1 0

ISLab- Intelligent Systems Laboratory 26


Mạng các cổng
Ví dụ 1: Vẽ mạng của cổng

f = xy  xz

ISLab- Intelligent Systems Laboratory 27


Mạng các cổng
• Ví dụ 2: Vẽ mạng của cổng

f = x( y  z)

➢ Nhận xét: Mạng trong ví dụ 1 sử dụng 4 cổng, trong ví dụ 2


sử dụng 3 cổng. Vậy số cổng tối tiểu để biểu diễn f là bao
nhiêu? Ta tìm công thức tối tiểu của f.
ISLab- Intelligent Systems Laboratory 28
• Ví dụ
f = xz  yz  xt  yt  xyz

ISLab- Intelligent Systems Laboratory 29


• Ví dụ

ISLab- Intelligent Systems Laboratory 30


Mạng logic
Cho sơ đồ

f ( x, y, z) = ( x  y  z) x y z

=> Viết biểu thức f

ISLab- Intelligent Systems Laboratory 31


Mạng logic
• Thiết kế một mạch điều khiển bởi 2 cầu dao

Mỗi cầu dao xem như là biến x, y : 1 là bật 0 là tắt


Cho F(x, y) =1 khi đèn sáng và 0 khi đèn tắt
Giả sử F(x, y) =1 khi cả hai cái đều bật hoặc cùng tắt

Ta có bảng chân trị sau x y F(x, y)


1 1 1
1 0 0
0 1 0
0 0 1

ISLab- Intelligent Systems Laboratory 32


Mạng logic

x xy
y
xy  x y
x
x

y xy
y

ISLab- Intelligent Systems Laboratory 33


Mạng logic
• Thiết kế một mạch điều khiển bởi 3 cầu dao

Mỗi cầu dao xem như là biến x, y : 1 là


bật 0 là tắt x y z F(x, y)
1 1 1 1
Cho F(x, y) =1 khi đèn sáng và 0 khi
1 1 0 0
đèn tắt
1 0 1 0
1 0 0 1
Giả sử F(x,y,z) =1 khi 1 hoặc 3
0 1 1 0
cái đều bật
0 1 0 1
0 0 1 1
0 0 0 0
Ta có bảng chân trị sau

ISLab- Intelligent Systems Laboratory 34


Mạng logic

• Mạch xyzxy z
x xyz
y x yz x yz
z
x
y xyz
y
z z
x x
y
z x yz
z
x x
y y
x yz
z
ISLab- Intelligent Systems Laboratory 35
Outline

1 Đại số Boole

2 Hàm Boole

3 Mạng các cổng

4 Phương pháp biểu đồ Karnaugh

5 Bài tập và nghiên cứu

ISLab- Intelligent Systems Laboratory 36


Biểu đồ karnaugh
Định nghĩa: Cho fFn, xét 2 công thức đa thức của một hàm
Boole f:
f = m1 m2 …. mk (F)
f =M1  M2 …  Ml (G)

Ta nói rằng công thức F đơn giản hơn công thức G nếu
tồn tại đơn ánh h: {1,2,..,k} → { 1,2,…, l} sao cho với mọi
i {1,2,..,k} thì số từ đơn của mi không nhiều hơn số từ
đơn của Mh(i).

=> Đơn giản hơn

ISLab- Intelligent Systems Laboratory 37


Công thức đa thức tối tiểu
Đơn giản như nhau
Nếu F đơn giản hơn G và G đơn giản hơn F thì ta nói F và
G đơn giản như nhau

Công thức đa thức tối tiểu:


Công thức F của hàm Boole f được gọi là tối tiểu nếu với
bất kỳ công thức G của f mà đơn giản hơn F thì F và G đơn
giản như nhau.

ISLab- Intelligent Systems Laboratory 38


Công thức đa thức tối tiểu
Ví dụ: Xét các công thức sau:

➢ Công thức (1) đơn giản hơn công thức (2) vì:

➢ Công thức (1) và công thức (3) đơn giản như nhau :
ISLab- Intelligent Systems Laboratory 39
Phương pháp biểu đồ Karnaugh
• Xét f là một hàm Boole theo n biến x1,x2,…,xn với n = 3
hoặc 4.

Trường hợp n = 3: f là hàm Boole theo 3 biến x, y, z. Khi đó


bảng chân trị của f gồm 8 hàng. Thay cho bảng chân trị của f
ta vẽ một bảng chữ nhật gồm 8 ô, tương ứng với 8 hàng của
bảng chân trị, được đánh dấu như sau:

ISLab- Intelligent Systems Laboratory 40


Phương pháp biểu đồ Karnaugh
• Qui ước: Khi một ô nằm trong dãy được đánh dấu
bởi x thì tại đó x =1, và nếu bởi 𝑥ҧ thì tại đó x =0,
tương tự cho y, z.

Các ô tại đó f bằng 1 sẽ được đánh dấu (tô đậm hoặc gạch
chéo). Tập các ô được đánh dấu được gọi là biểu đồ
Karnaugh của f, ký hiệu là kar(f).

ISLab- Intelligent Systems Laboratory 41


Phương pháp biểu đồ Karnaugh
• Trường hợp n = 4: f là hàm Boole theo 4 biến x, y, z, t.
Khi đó bảng chân trị của f gồm 16 hàng. Thay cho bảng
chân trị của f ta vẽ một bảng chữ nhật gồm 16 ô, tương ứng
với 16 hàng của bảng chân trị, được đánh dấu như sau:

ISLab- Intelligent Systems Laboratory 42


Phương pháp biểu đồ Karnaugh
Qui ước:
• Khi một ô nằm trong dãy được đánh dấu bởi x thì tại đó
x=, nếu bởi 𝑥ҧ thì tại đó x =0, tương tự cho y, z, t.

• Các ô tại đó f bằng 1 sẽ được đánh dấu (tô đậm hoặc


gạch chéo). Tập các ô được đánh dấu được gọi là biểu
đồ karnaugh của f, ký hiệu là kar(f).

• Trong cả hai trường hợp, hai ô được gọi là kề nhau (theo


nghĩa rộng), nếu chúng là hai ô liền nhau hoặc chúng là ô
đầu, ô cuối của cùng một hàng (cột) nào đó.
• Như vậy, do cách đánh dấu như trên, hai ô kề nhau chỉ lệch
nhau ở một biến duy nhất.
ISLab- Intelligent Systems Laboratory 43
Phương pháp biểu đồ Karnaugh
Ví dụ
f-1(1) = {0101, 0110, 1000, 1011}

f-1(0)={0000, 0001, 0010, 0100,


1000, 1001, 0110}

ISLab- Intelligent Systems Laboratory 44


Phương pháp biểu đồ Karnaugh
Định lý
Cho f, g là các hàm Boole theo n biến x1,x2,…,xn.

Khi đó:
a) kar(fg) = kar(f)kar(g).
b) kar(fg) = kar(f)kar(g).
c) kar(f) gồm đúng một ô khi và chỉ khi f là một từ tối
tiểu

ISLab- Intelligent Systems Laboratory 45


Phương pháp biểu đồ Karnaugh
• Tế bào:
▪ Tế bào là hình chữ nhật (theo nghĩa rộng) gồm 2n-k ô
▪ Nếu T là một tế bào thì T là biểu đồ karnaugh của một
đơn thức duy nhất m, cách xác định m như sau: lần lượt
chiếu T lên các cạnh, nếu toàn bộ hình chiếu nằm trọn
trong một từ đơn nào thì từ đơn đó mới xuất hiện trong
m.

ISLab- Intelligent Systems Laboratory 46


Biểu đồ Karnaugh
Ví dụ: Xét các hàm Boole theo 4 biến x, y, z, t.

ISLab- Intelligent Systems Laboratory 47


Biểu đồ Karnaugh
• Ví dụ: Xét các hàm Boole theo 4 biến x, y, z, t.

ISLab- Intelligent Systems Laboratory 48


Biểu đồ Karnaugh
• Ví dụ: Xét các hàm Boole theo 4 biến x, y, z, t.

ISLab- Intelligent Systems Laboratory 49


Biểu đồ Karnaugh
• Xét các hàm Boole theo 4 biến x, y, z, t.

ISLab- Intelligent Systems Laboratory 50


Biểu đồ Karnaugh
• Xét các hàm Boole theo 4 biến x, y, z, t.
Tế bào sau:

Là biểu đồ Karnaugh của đơn thức nào?

ISLab- Intelligent Systems Laboratory 51


Biểu đồ Karnaugh
Tế bào lớn: Cho hàm Boole f. Ta nói T là một tế bào
lớn của kar(f) nếu T thoả hai tính chất sau:

a) T là một tế bào và T  kar(f).

b) Không tồn tại tế bào T’ nào thỏa T’  T và


T  T’  kar(f).

ISLab- Intelligent Systems Laboratory 52


Biểu đồ Karnaugh

• Ví dụ: Xét hàm Boole f theo 4 biến x, y, z, t có biểu


đồ karnaugh như sau:

ISLab- Intelligent Systems Laboratory 53


Biểu đồ Karnaugh
• Kar(f) có 6 tế bào lớn như sau:

ISLab- Intelligent Systems Laboratory 54


Thuật toán
Bước 1: Vẽ biểu đồ karnaugh của f.
Bước 2: Xác định tất cả các tế bào lớn của kar(f).
Bước 3: Xác định các tế bào lớn m nhất thiết phải chọn.
Ta nhất thiết phải chọn tế bào lớn T khi tồn tại một ô của kar(f) mà ô này
chỉ nằm trong tế bào lớn T và không nằm trong bất kỳ tế bào lớn nào khác

Bước 4: Xác định các phủ tối tiểu gồm các tế bào lớn
Nếu các tế bào lớn chọn được ở bước 3 đã phủ được kar(f) thì ta có
duy nhất một phủ tối tiểu gồm các tế bào lớn của kar(f).
Nếu các tế bào lớn chọn được ở bước 3 chưa phủ được kar(f) thì:
Xét một ô chưa bị phủ, sẽ có ít nhất hai tế bào lớn chứa ô này, ta chọn
một trong các tế bào lớn này. Cứ tiếp tục như thế ta sẽ tìm được tất cả
các phủ gồm các tế bào lớn của kar(f).
Loại bỏ các phủ không tối tiểu, ta tìm được tất cả các phủ tối tiểu gồm
các tế bào lớn của kar(f).
ISLab- Intelligent Systems Laboratory 55
Thuật toán
• Bước 5: Xác định các công thức đa thức tối tiểu
của f.
Từ các phủ tối tiểu gồm các tế bào lớn của kar(f) tìm
được ở bước 4 ta xác định được các công thức đa thức
tương ứng của f
Loại bỏ các công thức đa thức mà có một công thức
đa thức nào đó thực sự đơn giản hơn chúng.
Các công thức đa thức còn lại chính là các công thức
đa thức tối tiểu của f.

ISLab- Intelligent Systems Laboratory 56


Ví dụ
• Tìm tất cả các công thức đa thức tối tiểu của hàm
Boole:

f ( x, y, z, t ) = xyzt  xy  xz  yz  xy( z  t )
= xyzt  xy  xz  yz  xyz  xyt

ISLab- Intelligent Systems Laboratory 57


Ví dụ
f ( x, y, z, t ) = xyzt  xy  xz  yz  xyz  xyt

Bước 1:Vẽ kar(f):

ISLab- Intelligent Systems Laboratory 64


Ví dụ
f ( x, y, z, t ) = xyzt  xy  xz  yz  xyz  xyt
Bước 2: Kar(f) có các tế bào lớn như sau:

yz

ISLab- Intelligent Systems Laboratory 65


Ví dụ
f ( x, y, z, t ) = xyzt  xy  xz  yz  xyz  xyt
Bước 3: Xác định các tế bào lớn nhất thiết phải chọn:
- Ô 1 nằm trong một tế bào lớn duy nhất x. Ta chọn x.
- Ô 3 nằm trong một tế bào lớn duy nhất yz. Ta chọn yz.
1 2
4 5
1 2 3 x
7 8
4 5 6 9 10

7 8 2 3
5 6 yz
9 10

ISLab- Intelligent Systems Laboratory 66


Ví dụ
Bước 4: Xác định các phủ tối tiểu gồm các tế bào lớn
1 2 3
1 2 3
4 5 6
4 5 6 7 8 x
9 10
7 8
9 10 1 2 3
4 5 6
Ta được duy nhất một phủ tối tiểu 7 8
gồm các tế bào lớn của kar(f): 9 10 yz
x ν yz.

ISLab- Intelligent Systems Laboratory 67


Ví dụ
f ( x, y, z, t ) = xyzt  xy  xz  yz  xyz  xyt
• Bước 5: Xác định các công thức đa thức tối tiểu của f.
Ứng với phủ tối tiểu gồm các tế bào lớn tìm được ở bước 4
ta tìm được duy nhất một công thức đa thức tối tiểu của f:
x  yz

ISLab- Intelligent Systems Laboratory 68


Ví dụ
f = yzt  yzt  yzt  xyzt  xzt

1 2
3 4 5

6 7 8 9

B1: Vẽ Kar(f)

ISLab- Intelligent Systems Laboratory 69


Ví dụ
f = yzt  yzt  yzt  xyzt  xzt
1 2 1 2 1 2
3 4 5 3 4 5 3 4 5

6 7 8 9 6 7 8 9 6 7 8 9

1 2
1 2 1 2
3 4 5
3 4 5 3 4 5

6 7 8 9
6 7 8 9 6 7 8 9
B2: Xác định tế bào lớn
ISLab- Intelligent Systems Laboratory 70
Ví dụ
f = yzt  yzt  yzt  xyzt  xzt
1 2 1 2 1 2
3 4 5 3 4 5 3 4 5

6 7 8 9 6 7 8 9 6 7 8 9

1 2 1 2 1 2
3 4 5 3 4 5 3 4 5

6 7 8 9 6 7 8 9 6 7 8 9
B3: Xác định các tế bào lớn nhất thiết phải chọn
ISLab- Intelligent Systems Laboratory 71
Ví dụ

f = yzt  yzt  yzt  xyzt  xzt


• Bước 3: Xác định các tế bào lớn nhất thiết phải chọn
▪ Ô 6 nằm trong một tế bào lớn duy nhất 𝑧ҧ𝑡.ҧ Ta chọn 𝑧ҧ𝑡ҧ
▪ Ô 1 nằm trong một tế bào lớn duy nhất 𝑥ҧ 𝑡.ҧ Ta chọn 𝑥ҧ 𝑡ҧ
▪ Ô 4 nằm trong một tế bào lớn duy nhất xzt. Ta chọn xzt

ISLab- Intelligent Systems Laboratory 72


Ví dụ
f = yzt  yzt  yzt  xyzt  xzt
1 2 1 2 1 2
3 4 5 3 4 5 3 4 5

6 7 8 9 6 7 8 9 6 7 8 9

1 2 1 2 1 2
3 4 5 3 4 5 3 4 5

6 7 8 9 6 7 8 9 6 7 8 9

zt  xt  xzt
B4: Xác định các phủ tối tiểu gồm các tế bào lớn
ISLab- Intelligent Systems Laboratory 73
Ví dụ
f = yzt  yzt  yzt  xyzt  xzt
Còn lại ô 5 chưa bị phủ
Ô 5 nằm trong 2 tế bào lớn: 2 cách chọn
1 2
3 4 5
1 2 1 2
6 7 8 9 3 4 5 3 4 5

zt  xt  xzt 6 7 8 9 6 7 8 9

B4: Xác định các phủ tối tiểu gồm các tế bào lớn
ISLab- Intelligent Systems Laboratory 74
Ví dụ
f = yzt  yzt  yzt  xyzt  xzt
Còn lại ô 5 chưa bị phủ
1 2 Ô 5 nằm trong 2 tế bào lớn: 2 cách chọn
3 4 5 1 2
3 4 5
6 7 8 9
6 7 8 9
zt  xt  xzt  xyz

B4: Xác định các phủ tối tiểu gồm các tế bào lớn

ISLab- Intelligent Systems Laboratory 75


Ví dụ
f = yzt  yzt  yzt  xyzt  xzt

Còn lại ô 5 chưa bị phủ


1 2
Ô 5 nằm trong 2 tế bào lớn: 2 cách chọn
3 4 5
1 2
6 7 8 9 3 4 5

zt  xt  xzt  yzt 6 7 8 9

B4: Xác định các phủ tối tiểu gồm các tế bào lớn
ISLab- Intelligent Systems Laboratory 76
Ví dụ
f = yzt  yzt  yzt  xyzt  xzt

• Bước 5: Xác định các công thức đa thức tối tiểu của f

zt  xt  xzt  xyz

zt  xt  xzt  yzt

ISLab- Intelligent Systems Laboratory 77


Ví dụ
• Hãy xác định các công thức đa thức tối tiểu của hàm
Boole:

f = x z( y  t )  x z t  z ( yt  x y )
❖Biểu đồ Karnaugh:

ISLab- Intelligent Systems Laboratory 78


Ví dụ

• Các tế bào lớn:


xz, yz, zt, x z t , x y t
• Các tế bào lớn bắt buộc phải chọn là
xz, zt, x z t
• Còn lại ô (1,4) có thể nằm trong 2 tế bào lớn
yz, x y t
ISLab- Intelligent Systems Laboratory 79
Ví dụ
• Do đó có 2 công thức đa thức tương ứng với phủ tối
tiểu:

f = xz  zt  x z t  x y t
f = xz  zt  x z t  yz
• Trong đó chỉ có công thức thứ hai là tối tiểu

ISLab- Intelligent Systems Laboratory 80


Bài tập

ISLab- Intelligent Systems Laboratory 81


Bài tập

ISLab- Intelligent Systems Laboratory 82


Bài tập
8. Cho các hàm Boole G1, G2, G3 xác định bởi bảng,
vẽ mạch thực hiện các hàm Boole này.

ISLab- Intelligent Systems Laboratory 83


9. Cho các hàm Boole F1, F2, F3 xác định bởi bảng,
vẽ mạch thực hiện các hàm Boole này:

ISLab- Intelligent Systems Laboratory 84


Bài 10
i/ Dùng các cổng NAND để xây dựng các mạch với các đầu ra như sau:
a) x b) xy c) x+y d) x⊕ y.
ii/ Dùng các cổng NOR để xây dựng các mạch với các đầu ra được cho
ở trên (i/).
Bài 11
a) Dùng các cổng NAND để dựng mạch cộng bán phần.
b) Dùng các cổng NOR để dựng mạch cộng bán phần.
Bài 22.
Dùng các bản đồ Karnaugh, tìm dạng tổng chuẩn tắc tối thiểu (khai triển
cực tiểu) của các hàm Boole ba biến sau:

ISLab- Intelligent Systems Laboratory 85


Bài tập
13. Tìm công thức đa thức tối tiểu của fF3 có

f = ( x  y  z)( x  y  z)( x  y  z )

14. Tìm công thức đa thức tối tiểu của các hàm f
tương ứng Biểu đồ Karnaugh:

ISLab- Intelligent Systems Laboratory 86


Thanks for your attention!
Q&A

You might also like