Ch¬ng 5 - Mét sè kiÕn thøc vÒ ®¹i sè logic
CH NG 5. M T S KI N TH C V Đ I S LOGICƯƠ
Ng i đ t n n móng cho ngành toán h c này là D. Boole (1815-1864). Do v y đ iườ
s logic còn tên g i đ i s Boole. Đ i s logic nhi u ng d ng, đây,
chúng ta quan tâm đ n các khía c nh liên quan đ n thi t k các m ch logic bênế ế ế ế
trong MTĐT. Nh đã th y, k t qu th c hi n các phép toán s h c v i các s như ế
phân m t s nh phân m i. Do v y, ta th hình dung thi t b th c hi n các ế
phép toán trong MTĐT nh thành ph n ch c năng bi n đ i nh phân. Thi t bư ế ế
đ c bi t đó cho phép n p s li u d ng nh phân đ u vào l y k t qu ế
d ng nh phân đ u ra. V y th xem b bi n đ i ch c năng đó nh m t ế ư
thi t b nhi u đ u vào nhi u đ u ra. T i m t th i đi m xác đ nh, m i đ uế
vào ch n p đ c m t bit t m i đ u ra ch cho ra đ c m t bit d li u. Đ ượ ượ
hi u h n v nguyên xây d ng các b bi n đ i nh phân ta s tìm hi u m t ơ ế
s v n đ có liên quan d i đây. ướ
5.1. CÁC M Đ I S LOGIC
Xét t p D = {0, 1}, các giá tr c a t p D còn g i giá tr logic hay nh phân. Đ i
l ng x ch th nh n giá tr trong t p D g i bi n Boole (hay bi n logic, bi nượ ế ế ế
nh phân). Hàm c a n bi n nh phân F(x ế 1, x2, ..., xn) ch nh n hai giá tr 0 1 g i
hàm Boole (ho c hàm logic). M i hàm boole n bi n th cho b ng m t b ng ế
có n+1 c t, n c t đ u là giá tr c a các bi n x ế 1, x2, ..., xn t ng ng. C t cu i cùngươ
giá tr c a hàm ng v i các giá tr c a bi n. d n = 2, các giá tr x1, x2 ế
các hàm t ng ng f(x1, x2) đ c cho nh trong B ng 5.1ươ ượ ư
x1x 2 f(x1,x2)
0 0 1
0 1 0
1 0 0
1 1 1
B ng 5.1. Hàm logic 2 bi n ế
D dàng th y, v i m i n đúng 2 n cách t h p khác nhau giá tr các bi n x ế 1,
x2, ..., xn. M t hàm Boole m t cách cho t ng ng m i m t trong s 2 ươ n v i m t
trong hai giá tr 0 và 1. Vì th nó s t ng ng v i m t cách phân ho ch t p 2 ế ươ n b
giá tr này thành 2 nhóm, m t nhóm hàm giá tr 1, m t nhóm hàm giá tr 0.
Nh v y m i hàm boole n bi n hoàn toàn đ c xác đ nh b i m t t p con trong 2ư ế ượ n
b giá tr đ giá tr c a hàm 1. Ta đã bi t đ i v i m t t p k ph n t thì t p ế
t t c các t p con c a nó s có 2 k ph n t . Do v y có đúng 2 n hàm Boole n bi n.ế
V i n = 1, có 4 hàm nh phân. Các hàm đó đ c cho trong B ng 5.2 ượ
37
Ch¬ng 5 - Mét sè kiÕn thøc vÒ ®¹i sè logic
x F1 F2 F3 F4
0 0 1 0 1
1 0 1 1 0
B ng 5.2. Các hàm logic 1 bi n ế
Hàm F1 và F2 là hàm h ng (không ph thu c vào đ i s x):
F1(x) 0 là hàm h ng 0
F2(x) 1 là hàm h ng 1
Giá tr F3(x) luôn b ng giá tr bi n x, đó là hàm đ ng nh t: ế
F3(x) x
Hàm F4(x) luôngiá tr ng c l i v i giá tr bi n x mà ta g i hàm ph đ nh ượ ế
ký hi u x. D th y x = x
D u th xem d u phép toán m t ngôi, cho phép t giá tr x xác đ nh giá tr
x. Phép toán đó cũng tên phép ph đ nh (m t s tài li u dùng d u - trên
đ u đ i t ng b ph đ nh thay cho d u ượ đ ng tr c đ i t ng). ướ ượ
V i n = 2, có 16 hàm logic. Giá tr c a các hàm đ c cho b ng 5.3. ượ
x y
F1
F 2
F3
F4
F5
F6
F7
F8
F9
F10
F11
F12
F13
F14
F15
F16
000000000011111111
010000111100001111
100011001100110011
110101010101010101
B ng 5.3. 16 hàm logic 2 bi n ế
Ta xét m t vài hàm quan tr ng:
F2(x, y) giá tr 1 khi ch khi x, y đ ng th i giá tr 1. Hàm này đ c ượ
kí hi u là (xy) và g i là phép nhân logic hay phép h i.
F7(x, y) có giá tr 1 khi và ch khi x, y có giá tr khác nhau. Hàm này chính là
ch s hàng đ n v khi c ng s h c x v i y. v y F7 còn g i phép ơ
c ng theo module 2.
F8(x,y) giá tr 0 khi ch khi x, y đ ng th i giá tr 0. Hàm F8(x,y)
đ c kí hi u (x ượ y) và còn g i là phép c ng logic hay phép tuy n.
38
Ch¬ng 5 - Mét sè kiÕn thøc vÒ ®¹i sè logic
F10(x,y) giá tr 1 khi ch khi x, y cùng giá tr nh nhau, ho c 0 ư
ho c 1. Hàm F10(x,y) có kí hi u (x y) và còn g i là phép t ng đ ng ươ ươ
F14(x,y) có giá tr 0 khi và ch khi x có giá tr 1 đ ng th i y có giá tr 0. Hàm
F14(x,y) đ c kí hi u (x ượ y) và còn g i là phép kéo theo.
Bài đ c thêm: Logic m nh đ
L n đ u tiên logic m nh đ đ c đ c p đ n trong m t bài báo c a Boole có tên là "Các quy lu t ượ ế
c a ý nghĩ". Theo đó m i m nh đ m t kh ng đ nh. M nh đ s nh n giá tr chân lý "đúng"
hay "sai" tuỳ thu c vào kh ng đ nh phù h p v i th c t hay không. Sau đó Boole đ a ra các ế ư
phép toán đ tính giá tr chân lý c a nh ng m nh đ ph c t p.
Gi s P Q hai m nh đ nào đó. M nh đ "P Q" s nh n g tr đúng n u c P Q ế
đ u đúng. N u th hi n giá tr đúng b ng 1 giá tr sai 0 ta th y giá tr chân c a m nh đ ế
"P Q" chính phép nhân logic các giá tr chân c a P Q. Do v y trong ngôn ng Tin h c
ng i ta g i luôn phép nhân logic là phép "AND".ườ
Giá tr chân lý c a m nh đ "P ho c Q" chính là phép c ng logic các giá tr chân lý c a P và Q. "P
ho c Q" s đúng ch c n ít nh t P ho c Q đúng. Trong trong ngôn ng Tin h c, ng i ta cũng g i ườ
phép c ng logic là phép "OR".
Giá tr chân lý c a m nh đ "Không ph i P" s đúng n u P sai và ng c l i. Giá tr này có th tính ế ượ
b ng phép ph đ nh logic giá tr chân c a P. Trong trong m t s ngôn ng Tin h c, phép ph
đ nh logic còn có m t tên g i khác là phép "NOT".
Phép c ng theo module 2 còn g i là phép "ho c lo i tr " (OR Exclusive) và trong ngôn ng tin h c
ng i ta g i nó là phép "XOR".ườ
5.2. BI U DI N CÁC HÀM Đ I S LOGIC
M t hàm đ i s logic cũng th đ c xác đ nh thông qua các hàm đ i s logic ượ
khác, ví d hàm F7(x,y) trong B ng 5.3 có th cho b ng công th c sau:
( x y ) ( x y )
Hai công th c d i đây g i là công th c đ i ng u De Morgan. ướ
(x y) =( x) ( y), ( x V y) = ( x) ( y)
Các ng th c này cho th y th bi u di n phép c ng qua phép nhân phép
ph đ nh (và ng c l i), ch ng h n, x V y = ượ ( x) ( y).
Sau đây là hai công th c khác :
(x y) = x y, ( x y) = (x y) (y x).
Có nhi u cách ch ng minh m t đ ng th c logic trong đó m t cách ch ng minh
r t đ n gi n là so sánh giá tr c a hai v v i t t c các b đ i s c th . Vì ch ơ ế
m t s h u h n các b đ i s nên chúng ta th k ra t t c các tr ng h p ườ
trong m t b ng giá tr . Ch ng h n đ ch ng minh công th c c a hàm F7 nói trên
ta có th l p m t b ng và so sánh giá tr c a hai v ng v i m i b giá tr c a các ế
đ i nh B ng 5.4: ư
39
Ch¬ng 5 - Mét sè kiÕn thøc vÒ ®¹i sè logic
x y x y x y ( x y) (x y) F7(x,y)
0 0 0 0 0 0
0 1 0 1 1 1
1 0 0 1 1 1
1 1 0 0 0 0
B ng 5.4. Giá tr F7(x,y)
Qua các ví d trên ta th y r ng các hàm đ i s logic này có th bi u di n qua các
hàm đ i s logic khác.
M t t p h p h u h n các hàm đ i s logic đ c g i m t h hàm đ n u m i ượ ế
hàm đ i s lôgic khác đ u th bi u di n đ c qua h hàm này. th ch ng ượ
minh không khó khăn l m r ng h hai hàm ph đ nh c ng logic h hàm đ .
Do công th c đ i ng u De Morgan ta th y h hai hàm ph đ nh nhân logic
cũng là h hàm đ .
5.3. ÁP D NG Đ I S LOGIC TRONG VI C THI T K C M CH
LOGIC
MTĐT bi u di n thông tin b ng các tr ng thái c a các thành ph n v t lý. Thông
th ng các thành ph n này hai tr ng thái đ i l p. d nh m t m ch đi nườ ư
đóng ho c m , chi u c a t tr ng m t vùng v t li u t nhi m t theo chi u này ườ
ho c chi u kia... N u dùng tr ng thái này ch giá tr 1 và tr ng thái kia ch giá tr 0 ế
thì ta th y r ng MTĐT m t máy làm vi c trên h nh phân. M i phép x máy
th th c hi n đ c th c ch t c hàm đ i s logic. Các h v t th c hi n ượ
các hàm đ i s logic g i là các m ch logic.
Ta minh h a m t s m ch logic đ n gi n dùng các công t c ng t ho c đóng ơ
m ch đi u khi n (g i các r le) v i quy c r ng tr ng thái đi n th hi n ơ ướ
giá tr logic 1, tr ng thái không có đi n th hi n giá tr logic 0.
Ph n t AND
Cho m ch đi n hai r le K1, K2 m c n i ti p nh Hình 5.1. Ch khi dòng ơ ế ư
đi n đi u khi n đ đóng K1 K2 thì m i dòng đi n qua R. v y s ph
thu c tr ng thái R vào các tr ng thái K1, K2 có th bi n đ i R= K1 ế K2
Hình 5.1. S đ ph n t ANDơ
40
R
K1 K2
Ch¬ng 5 - Mét sè kiÕn thøc vÒ ®¹i sè logic
Ph n t OR
Cho m ch đi n cũng hai r le K1, K2 v i tính ch t nh v a xét, nh ng đ c ơ ư ư ượ
m c song song theo Hình 5.2:
Hình 5.2. S đ ph n t ORơ
D nh n th y R không dòng đi n (th hi n giá tr 0) khi ch khi K1 K2
đ ng th i ng t m ch (th hi n giá tr 0). Do đó, giá tr logic R th hi n t ng
logic c a các giá tr c a K1 và K2 th hi n.
Ph n t NOT
Xét m ch đi n s đ nh trên Hình 5.3. Khi K m , dòng đi n ph i đi qua R, ơ ư
còn khi K đóng, do đi n tr c a K vô cùng bé so v i R nên dòng đi n đi qua K
không đi qua R. Do v y, giá tr logic R th hi n là ph đ nh giá tr mà K th hi n.
Hình 5.3. S đ ph n t NOTơ
Trên th c t các m ch logic th ng đ c ch t o t các m ch bán d n ho c các ế ườ ượ ế
m ch vi đi n t v i kích th c siêu nh . Ng i ta cũng ch t o nh ng m ch ướ ườ ế
(ph n t ) OR, AND, NOT, NAND (NOT AND), NOR (NOT OR), XOR c nh ng
m ch có ch c năng ph c t p th c hi n các x lý ph c t p h n. Các h này g i là ơ
các h logic. Nh v y th hình dung các h logic nh nh ng h p đen (mà ta ư ư
không quan tâm đ n c u trúc bên trong) có m t s đ u vào và m t s đ u ra.ế
Các tín hi u đ u vào đ u ra các tín hi u nh phân (t ng ng v i m t ươ
trong hai tr ng thái v t lý). Ta đã bi t h m ph đ nh, tuy n h i m t h ế
hàm đ . Nh v y v m t nguyên t c th ch ng ch t ư
các ph n t NOT OR AND đ t o nên b t c m t
máy th c hi n các phép bi n đ i nh phân nào. d sau ế
đây minh h a vi c l p m ch c ng hai bit.
B c ng 2 bit
41
R
K1
K2
R
K
O
T
Hình 5.4