พีชคณิตบูลลีน (boolean algebra)seree/310205/chap13.pdf ·...

21
พีชคณิตบูลลีน (Boolean Algebra) เครื่องคอมพิวเตอร ประกอบดวยวงจรไฟฟาทํางานเปนจังหวะ และประสานงานกันเปนระบบ วงจรไฟฟาเหลานี้ประกอบดวยชิ้นสวนพื้นฐานซึ่งรับขอมูล และสงขอมูลออกโดยที่ขอมูล เหลานี้แทนดวย 2 สถานะ คือ ปดหรือเปด การออกแบบวงจรทั้งหลายไดอาศัยหลักการทางตรรกะ ซึ่งถือเปนพื้นฐานของพีชคณิตบูลลีน โดยการแทนการทํางานของวงจรดวยฟงกชันบูลลีน ฟงกชันดังกลาวสามารถเขียนในรูป นิพจน ที่ประกอบดวยตัวแปร แบบ 2 สถานะ และตัวดําเนินการบูลลีน และกรรมวิธีในการ ลดรูปนิพจนบูลลีน ซึ่งจะสงผลใหวงจรที่ออกแบบมีความซับซอนนอยและทํางานอยางมี ประสิทธิภาพ ฟงกชันบูลลีน พีชคณิตบูลลีนประกอบดวยการดําเนินการ และกฏซึ่งกระทํากับคาหรือชุดของคา คาแตละคานั้นกําหนดไดเปน 2 ลักษณะ เขียนแทนดวยสัญลักษณ 0 (คาเท็จ - false) และ 1 (คา จริง - true) การดําเนินการที่ใชกันทั่วไปมีอยู 3 การดําเนินการคือ (1) complementation (2) การบวกบูลลีน (3) การคูณบูลลีน 1. การดําเนินการ complementation (-) และกําหนดให 0 = 1 1 = 0 2. การดําเนินการบวกบูลลีน หรือ OR แทนดวยสัญลักษณ + และกําหนดให 1 + 1 = 1 1 +0 = 1 0 + 1 = 1 0 + 0 = 0 3. การดําเนินการคูณบูลลีน หรือ AND แสดงดวยสัญลักษณ . 1.1 = 1

Upload: others

Post on 21-Jan-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

พชคณตบลลน (Boolean Algebra)

• เครองคอมพวเตอร ประกอบดวยวงจรไฟฟาทางานเปนจงหวะ และประสานงานกนเปนระบบ วงจรไฟฟาเหลานประกอบดวยชนสวนพนฐานซงรบขอมล และสงขอมลออกโดยทขอมลเหลานแทนดวย 2 สถานะ คอ ปดหรอเปด

• การออกแบบวงจรทงหลายไดอาศยหลกการทางตรรกะ ซงถอเปนพนฐานของพชคณตบลลน โดยการแทนการทางานของวงจรดวยฟงกชนบลลน ฟงกชนดงกลาวสามารถเขยนในรปนพจน ทประกอบดวยตวแปร แบบ 2 สถานะ และตวดาเนนการบลลน และกรรมวธในการลดรปนพจนบลลน ซงจะสงผลใหวงจรทออกแบบมความซบซอนนอยและทางานอยางมประสทธภาพ

ฟงกชนบลลน • พชคณตบลลนประกอบดวยการดาเนนการ และกฏซงกระทากบคาหรอชดของคา • คาแตละคานนกาหนดไดเปน 2 ลกษณะ เขยนแทนดวยสญลกษณ 0 (คาเทจ - false) และ 1 (คา

จรง - true) • การดาเนนการทใชกนทวไปมอย 3 การดาเนนการคอ

(1) complementation (2) การบวกบลลน (3) การคณบลลน

1. การดาเนนการ complementation (-) และกาหนดให

0 = 1 1 = 0 2. การดาเนนการบวกบลลน หรอ OR แทนดวยสญลกษณ + และกาหนดให 1 + 1 = 1 1 +0 = 1 0 + 1 = 1 0 + 0 = 0 3. การดาเนนการคณบลลน หรอ AND แสดงดวยสญลกษณ . 1.1 = 1

Page 2: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

2

1.0 = 0 0.1 = 0 0.0 = 0 โดยปกต เราสามารถละสญลกษณ . ได • ในนพจนบลลน ซงมตวดาเนนการบลลนปนกน ถาไมมเครองหมายวงเลบกาหนดให

กระทาการใดกอน ใหดาเนนการเรยงตามลาดบคอ ทา complement กอนจากนนทา AND ทายทสดจงทา OR

• ตวอยางท 1 หาคา 1.0 + (0 + 1) 1. 0 + (0 + 1) = 0 + 1 = 0 + 0 = 0 • ตวดาเนนการบลลน complement AND และ OR มความหมายตรงกบตวดาเนนการตรรกะ ~

^ และ v ตามลาดบ • ในทางตรรกะนน 0 หมายถงคาเทจ และ 1 หมายถงคาจรง ดงนนพชคณตบลลน และ

ตรรกศาสตรจงมความสมพนธกนอยางใกลชด ตวแปรบลลน • ตวแปรบลลน หมายถงตวแปรซงอาจมคา 0 หรอ 1 เทานน • ถากาหนดให B = {0,1} และ x1, x2, … xn เปนตวแปรบลลนแลว ฟงกชนบลลนลาดบท n

หมายถงฟงกชนจากเซต Bn (เซต Bn คอ {(x1,x2,…,xn) | xi ∈ B, 1 ≤ i ≤ n}) ไปสเซต B เรามกอธบายฟงกชนบลลนดวยตารางแสดงความสมพนธของ x1,x2,…,xn กบคาของฟงกชน ตารางท 1 แสดงฟงกชนบลลน F(x,y) สาหรบตวดาเนนการ AND

x y F(x,y) 0 0 0 0 1 0 1 0 0 1 1 1

Page 3: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

3

• สามารถเขยนฟงกชนบลลนดวยนพจนบลลน ซงประกอบดวยคาคงทบลลน ตวแปรบลลน

และตวดาเนนการบลลน • นพจนบลลนทใชได (valid) มดงน

1. คาคงท 0 และ 1 เปนนพจนบลลน 2. ตวแปร เปนนพจนบลลน 3. ถา E1 และ E2 เปนนพจนบลลนแลว E1, E1.E2, E1 + E2, ( E1 ), (E1 . E2) และ

(E1+E2) จะเปนนพจนบลลน • คาของนพจนบลลนหรอฟงกชนบลลน คานวณไดโดยการแทนคาตวแปรดวย 0 หรอ 1 แลว

คานวณตามกฏการดาเนนการ

ตวอยางท 2 หาคาของฟงกชนบลลน F(x,y,z) = x + yz x y z x yz F(x,y,z) 0 0 0 1 0 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 1 1 0 1 1

• ฟงกชนบลลนลาดบท 2 เปนฟงกชนจากตวแปรสองตว ซงผสมกนไดทงหมด 4 แบบนนคา

ของฟงกชนจงมไดทงหมด 24 หรอ 16 แบบ ตารางท 3 แสดงคาทเปนไปไดทงหมดของฟงกชนบลลนลาดบท 2

X y F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

Page 4: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

4

ตวอยางท 3 หาจานวนฟงกชนบลลนของฟงกชนบลลนลาดบท n ฟงกชนบลลนลาดบท n มตวแปรทงหมด n ตว

แตละตวเปนได 2 สถานะ ฉะนนมวธผสมตวแปรไดทงหมด 2n วธ ซงคอจานวนคาของฟงกชน แตละคาเปนได 2 สถานะ

ดงนนจานวนฟงกชนทงหมดจงมคา 2(2n)

• จากตวอยางท 3 ใหสงเกตวาจานวนฟงกชนทเปนไปไดสาหรบ n ตวแปรมขนาดเพมเรวมาก

เมอ n มคามากขน ดงนนการใชฟงกชนบลลนควบคมหรอแสดงการทางานจงทาไดมากมาย • ในการแสดงฟงกชนบลลนดวยนพจน เราตองการแสดงนพจนทมรปแบบงายทสดคอ จานวน

ตวแปรนอยทสด และเกยวของกบตวดาเนนการนอยทสดในรปแบบทซบซอนนอยทสด การลดรปนพจนมเอกลกษณ ซงสามารถชวยลดรปไดดงแสดงในตารางท 4

• ในการพสจนเอกลกษณ เราสามารถใชวธสรางตาราง โดยกาหนดคา 0 และ 1 ใหกบตวแปรแตละตว และพจารณาทกคาทเปนไปไดของชดตวแปร (ทก combination)

ตารางท 4 เอกลกษณบลลน

เอกลกษณ x = x

x + y = y + x x . y = y . x

x + x = x x . x = x

x + ( y + z ) = ( x + y) + z x . ( y + z ) = ( x . y) . z

x + 0 = x x . 1 = x

x + yz = ( x + y)( x + z ) x ( y + z ) = xy + xz

x + 1 = 1 x . 0 = 0

xy = x + y x + y = x . y

Page 5: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

5

ตวอยางท 4 ใหพสจนเอกลกษณ x + yz = (x + y)(x + z)

x y z yz x + y x + z x + yz (x+ y)(x+ z) 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1

สดมภสดทายทงสองของตารางมคาตรงกน ดงนนเอกลกษณ x + yz = (x + y)(x + z)จงเปนจรง ตวอยางท 5 ใชเอกลกษณในการพสจนวา p(p + r) = p p(p + r) = (p + 0)(p + r) Q x + 0 = x = p + 0 ⋅ r Q x + yz = (x + y)(x + z) = p + r ⋅ 0 Q xy = yx = p + 0 Q x ⋅ 0 = 0 = p Q x + 0 = x Duality จากตารางท 4 ใหสงเกตวาเราจดเอกลกษณเปนชดๆละ 2 เอกลกษณ เอกลกษณแตละชดนนมลกษณะเปนคกน (duality) ค (dual) ของนพจนบลลนใดคานวณไดโดยการเปลยนตวดาเนนการ AND เปน OR และเปลยนตวดาเนนการ OR เปน AND และเปลยนคาคงท 0 เปน 1 และเปลยนคาคงท 1 เปน 0 ตวอยางท 6 หาคของนพจน x(y + 0) และ x . 1 + (y + z) คของ x(y + 0) คอ x + (y . 1)

Page 6: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

6

คของ x . 1 + ( y + z) คอ (x + 0) . (y . z)

หลกของลกษณะค (duality principle) กลาววา เอกลกษณใดเปนจรงแลว คของเอกลกษณนนจะเปนจรงดวย หลกการนทาใหเรา

สามารถหาเอกลกษณใหมๆไดอยางงายดายในเชงฟงกชนบลลน ตวอยางท 7 หาเอกลกษณซงเปนคของเอกลกษณ x(x + y) = x คของนพจน x(x + y) คอ x + (xy) คของ x คอ x ดงนนคเอกลกษณของx(x + y) = x คอ เอกลกษณ x + xy = x การแทนฟงกชนบลลน ในหวขอนเราจะศกษาปญหา 2 ปญหา

o ปญหาแรกคอถาทราบคาของฟงกชนบลลนแลว จะหานพจนบลลนทแทนฟงกชนนไดอยางไร

o ฟงกชนบลลนใด ๆ สามารถแสดงดวยผลบวกของผลคณบล ลนของตวแปร และสวนเตมเตม (complement) ของตวแปร

o ผลสรปคอ เราสามารถแทนฟงกชนบลลนใดๆโดยการใชตวดาเนนการเพยง 3 แบบคอ . + และ -

o ปญหาทสองคอสามารถแทนฟงกชนบลลนใดๆ โดยใชตวดาเนนการนอยกวานไดหรอไม o แทนฟงกชนบลลนโดยใชตวดาเนนการเดยวได

ตวอยางท 8 หานพจนซงแทนฟงกชน F(x,y,z) และ G(x,y,z) ในตารางตอไปน x y z F(x,y,z) G(x,y,z) 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 1 1 0 0 1 0 0 0 0 1 0 1 1 0 1 1 0 0 1 1 1 1 0 0

Page 7: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

7

สาหรบ F นพจนทแทน F จะตองมคา 1 เมอ x = z = 1 และ y = 0 และมคา 0 ในกรณทเหลอ นพจนดงกลาวคอผลคณบลลนของ x, y และ z ซง x y z จะมคา 1 เฉพาะเมอ x = y = z = 1 นนคอ x = z = 1 และ y = 0 สาหรบ G นพจนทแทน G จะตองมคา 1 เมอ x = z = 0 และ y = 1 หรอเมอ x = y =1 และ z = 0 สามารถแทนคาอธบายดงกลาวดวยผลบวกบลลนของผลคณบลลน 2 พจน ผลคณแตละพจนคอแตละกรณ สวนผลบวกแสดงถงการรวมกรณทงสอง ซงในขณะใดขณะหนงเกดขนไดเพยงกรณเดยว ผลคณ x y z มคา 1 เฉพาะเมอ x = z = 0 และ y = 1 และ ผลคณ x y z มคา 1 เฉพาะเมอ x = y = 1 และ z = 0 ดงนนเราสามารถแทน G ดวย x y z + x y z ซงหมายความวา G มคา 1 เฉพาะเมอ x = z = 0 และ y = 1 หรอเฉพาะเมอ x = y = 1 และ z = 0 • ตวอยางขางตนนาไปสวธการสรางนพจนทจะแทนฟงกชน โดยการพจารณาคาของตวแปรท

จะทาใหฟงกชนทคา 1 ถา x เปนตวแปรบลลนแลวเราเรยก x และ x วาเปน literal ของ x เมอพจารณาตวแปร n ตว ผลคณของ literal ของตวแปรทง n ตวน เรยกวา พจนสน (minterm)

• พจนสนใดๆจะมคา 1 เฉพาะเมอ literral ทกตวของพจนสนนนมคา 1 เทานน หรอกลาวไดวาเฉพาะเมอชดตวแปรในพจนสนนนมคาทเหมาะสมเทานน

ถา x1, x2, …, xn เปนตวแปรทพจารณา พจนสนจะอยในรป y1 y2 … yn โดยท yi เปน literal และมรปแบบ xi หรอ xi คาของ y1 y2 … yn มคา 1 กตอเมอ yi = 1 สาหรบ i = 1, 2, …, n ถา yi มรปแบบ xi กรณนกคอเมอ xi = 1 ถา yi มรปแบบ xi กรณนกคอเมอ xi = 0 ตวอยางท 9 หาพจนสน ซงมคา 1 เฉพาะเมอ x1 = x3 = 0 และ x2 = x4 = x5 =1 พจนสนดงกลาวคอ x1 x2 x3 x4 x5 ซงมคา 1 เฉพาะเมอ x1= x2= x3= x4 = 1 หรอเฉพาะเมอ x1 = x3 = 0 และ x2 = x4 = x5 = 1

• เมอนาพจนสนซงไมเหมอนกนมาบวกกน เราจะไดนพจนบลลน ซงจะมคา 1 เฉพาะเมอพจน

สน 1 พจนในตพจนบลลนนนมคา 1 และพจนสนอนๆมคา 0 นนคอ นพจนบลลนจะมคา 1 เฉพาะเมอผสมคาตวแปรทเหมาะสมเทานน แตละการผสมคาตวแปรทเหมาะสมคอหนงพจนสน

Page 8: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

8

การกระจายผลบวกของผลคณ(sum-of-products expansion หรอการหา disjunctive normal form) เปนการแทนฟงกชนบลลน โดยหานพจนบลลนซงอยในรปผลบวกของพจนสน ซงแตละพจนสนแทนแตละกรณผสมคาตวแปรททาใหฟงกชนมคา 1 ตวอยางท 10 หาผลบวกของผลคณของฟงกชน F(x,y,z) = xy + z เราแทน F(x,y,z) ดวยตาราง

x y z xy z xy + z 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 0 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1 0 1 0 0 0 1 1 0 1 1 1 1 1 1 1 0 1

พจารณาสดมภสดทาย กรณท xy + z มคา 1 จะได F(x,y,z) = x y z + x y z + x y z + x y z + x y z • ณ จดนเราพอจะบอกไดวา เราสามารถแทนฟงกชนบลลนใดๆไดดวย ผลบวกของผลคณซงใช

ตวดาเนนการเพยง 3 แบบคอ . + และ - เราเรยกเซต {. , + , - } วามคณสมบตสมบรณแบบการทางาน (functionally complete)

• ปญหาทนาคดคอมเซตสมบรณแบบการทางานขนาดเลกกวานหรอไม คาตอบกคอมไดถาเราสามารถแทนตวดาเนนการใดตวดาเนนการหนงในเซตขางตนดวยตวดาเนนการทเหลอได จากตารางท 4 ในหวขอทผานมา

เราทราบวา x + y = x y

ดงนน x + y = x y (Q P =P) หรอ x + y = x y (Q P = P)

Page 9: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

9

นนคอเราสามารถแทนการ + ดวย ⋅ และ - หรอเซต { ⋅, - } มคณสมบตสมบรณแบบการทางาน ในทานองเดยวกนเราสามารถพสจนไดวา xy = x + y ดงนน { + , - } จงมคณสมบตสมบรณแบบการทางานเชนกน • ปญหาทนาคดตอไปคอ มเซตสมบรณแบบการทางานทมขนาดเลกกวานหรอไม (คอมตว

ดาเนนการเพยงตวเดยว) ตวดาเนนการดงกลาวคอ NAND (NAND กคอ NOT AND หรอ x NAND Y = x ⋅ y)หรอ | ซงกาหนดการทางานคอ

0 | 0 = 1, 0 | 1 = 1, 1 | 0 = 1 และ 1 | 1 = 0 • การแสดงวา { | } จงมคณสมบตเดยวกนน ใหผเรยนลองพสจนเอกลกษณตอไปน x = x ⏐ x xy = (x ⏐ y) ⏐(x ⏐ y) • ตวดาเนนการทนาสนใจอกตวหนงคอ NOR(NOR กคอ NOT OR หรอ x NOR y = x + y) หรอ ↓ ซงกาหนดการทางานคอ 0 ↓ 0 = 1, 0 ↓ 1 = 0,1 ↓ 0 = 0, และ 1 ↓ 1 = 0 • เซต { ↓ } มคณสมบตสมบรณแบบการทางานเชนกน ประตตรรกะ อปกรณคอมพวเตอรนนทสวนประกอบมากมาย แตละสวนประกอบดวยวงจรอกเปนจานวนมาก วงจรแตละวงจรไดถกออกแบบใหทางานโดยมทางสาหรบรบสญญาณเขาและ ทางสาหรบสงสญญาณออกไปสวงจรอน เราสามารถแทนสญญาณเขาและออกดวยคาจากเซต { 0, 1} ดงนนเราจงสามารถแทนหนาทของวงจรไดดวยฟงกชนบลลน โดยการแทนสญญาณเขาดวยตวแปรของฟงกชน และสญญาณออกดวยคาของฟงกชน วงจรประกอบดวยสวนยอยคอ ประตตรรกะ ( logic gate ) หรอเรยกสน ๆวา ประต ( gate ) แตละประตกคอตวดาเนนการ บลลนนนเอง ในหวขอนเราจะศกษาวงจรซงมคาสญญาณออกขนอยกบสญญาณเขาเทานน วงจรประเภทนคาสญญาณออกจะไมขนอยกบสถานะเดมของวงจร นนคอไมมความจาสาหรบสถานะเดมวงจรประเภทนมชอเรยกวา วงจรคอมบเนชนนอล (combinational circuit) เนองจากเซต { +, *, - } มคณสมบตสมบรณแบบการทางาน เราจงสามารถสรางวงจรคอมบเนชนนอล ดวยประต 3 แบบ ตามแบบตวดาเนนการในเซตดงกลาว ประตแบบแรกชอวา ตวกลบคา (inverter) ซงรบสญญาณเขา 1 สญญาณ และใหสญญาณออก 1 สญญาณ ซงมคาตรงขามกบสญญาณเขา ตวกลบคานกคอ ตวดาเนนการ complement ประตแบบทสองชอวาประต

Page 10: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

10

AND (AND gate) และแบบทสามชอวาประต OR (OR gate) ประตทงสองแบบนรบสญญาณเขาตงแต 2 สญญาณขนไป และใหสญญาณออก 1 สญญาณ ซงมคาเปนผลคณ บลลนและผลบวกบลลนของสญญาณเขาทงหมดตามลาดบ รปท 8.1 แสดงสญลกษณแทนประตทง 3 แบบ ลกศรทศทางเขาไปยงประตแสดงสญญาณเขา และลกศรทศทางออกจากประตแสดงสญญาณออก เมอเขาใจสญลกษณดแลวเราสามารถละทศทางดงกลาวได

ในวงจรคอมบเนชนนอล สญญาณเขาหนงสญญาณ อาจจะใชรวมกนโดยประตหลายประตได ในทางกลบกนสญญาณออกหนงสญญาณ กอาจแยกไปเขาประตหลายประตไดรป แสดงวงจรคอมบเนชนนอล สาหรบฟงกชนบลลน xy + xy ซงเขยนไดเปนสองแบบจะเลอกใชแบบใดกไดเพอใหเกดความชดเจนทสด (แตถาวเคราะหในแงระดบสญญาณทางไฟฟาอาจตางกนบาง)

รปท .2 วงจร x y + x y ซงเขยนได 2 แบบ

Page 11: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

11

ตวอยางท 11 วาดรปวงจรซงคานวณฟงกชน ก. (x + y )x ข. x (y + z) ค. (x + y + z) ( x y z)

รปท 3 วงจรแทนฟงกชนในตวอยางท 11

Page 12: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

12

ตวอยางท 12 คณะกรมการพจารณาขอเสนอชดหนงม 3 คน ในการพจารณาขอเสนอหนงๆ ถากรรมการอยางนอยสองคนเหนดวยกบขอเสนอ มตทประชมจงจะผานขอเสนอนนใหออกแบบวงจรเพอแสดงมตของทประชม เราสามารถแทนการเหนดวย ดวยคา 1 และการไมเหนดวย ดวยคา 0 กาหนดใหความเหนของกรรมการทงสามคอ ตวแปร x, y และ x ตามลาดบ ดงนนวงจรทตองการจะใหสญญาณออกเปนคา 1 เมออยางนอยตวแปรสองตวมคาเปน 1 เมออยางนอยตวแปรสองตวมคาเปน 1 ฟงกชนบลลนสาหรบการทางานนมคา xy + xz + yz รปท 8.4 แสดงวงจรดงกลาว

รปท 4 วงจรเสยงสวนใหญ ตวอยางท 13 ในการควบคมการเปดและปดไฟบนไดดวงหนง เราใชสวตชสองสวตชเมอไฟดบอย การสบสวตชใดสวตชหนง จะมผลใหไฟสวาง และเมอไฟสวางอยกบการสบสวตชใดสวตชหนงจะมผลใหไฟดบ ใหออกแบบวงจรควบคมการทางานของดวงไฟในลกษณน เราสามารถแทนการทางานของสวตชทงสองดวยตวแปร x และ y ถาตวแปรเหลานมคา 0 ใหหมายความวาปดสวตช (ตองการใหไฟดบ) และถามคา 1 ใหหมายความวาเปดสวตช (ตองการใหไฟสวาง) สาหรบวงจรทตองการนนจะใหสญญาณ 0 เพอดบไฟ และสญญาณ 1 เพอเปดไฟ พจารณาแทนการทางานของวงจรนดวยฟงกชนบลลน F(x,y) เมอเรมตนใหสวตชทงสองอยในสถานะปดสวตชและไฟดบ ดงนน F(1,1) = 1 จากสถานะนถาเปลยนสถานะของสวตชใดสวตชหนงเปนเปดสวตช ไฟกจะสวาง ดงนน F(0,1) = F(1,0) = 0 จากสถานะทงสองนถาเปลยนสถานะของสวตชทปดเปนสถานะสวตชเปด ไฟกจะดบอกครงหนง ดงนน F(0,0) = 1 การทางานนอธบายไดดวยตาราง

x y F(x,y) 0 0 1 0 1 1 1 0 1 1 1 1

Page 13: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

13

จากตารางเราไดวา F(x,y) = x y + x y

รปท 5 วงจรสองสวตชควบคมการเปด-ปดไฟ ADDER ในระบบคอมพวเตอรทวไปจะแทนเลขจานวนเตมดวยเลขฐานสอง ดงนนวงจรบวกเลขฐานสองจงมใชในหนวยประมวลผล ลองพจารณาการบวกเลขฐานสองตอไปน 1 0 1 1 + 0 0 1 0 1 1 0 1

เมอพจารณาการบวกแตละตาแหนงจะพบวาเปนการนาเลข 3 บตมาบวกกนคอ ตวตง ตวบวกและตวทดจากตาแหนงทางขวา ผลลพธจะไดเปน 2 บตคอ ผลบวกและตวทดไปยงตาแหนงทางซายวงจรททาการบวก 3 บตนชอวา ตวบวกเตม (full adder) การบวกตวตง และตวบวก (ตวละ 1 บต) แลวไดผลลพธ 2 บต คอ ผลบวก และตวทด ถาให x เปนบตตวตง y เปนบตตวบวก s เปนบตผลบวก และ c เปนบตตวทด เราจะไดตารางความสมพนธของขอมลเขาและออกจากวงจรดงน

x y s c 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1

ฟงกชนบลลนทไดจากตารางนคอ s = x y + x y = (x + y)(xy) (ลองพสจน !)

Page 14: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

14

c = x y ดงนนวงจรตวบวกครงจงมรปแบบ

สาหรบวงจรตวบวกเตม กาหนดให x เปนบตตวตง y เปนบตตวบวก ci เปนบตตวทดเขา s เปนบตผลบวก และ ci+1 เปนตวทดออก เราสามารถเขยนตารางแสดความสมพนธของขอมลเขาและออกของวงจรดงน

x y ci s ci+1 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1

ฟงกชนบลลนทไดจากตารางคอ s = x y ci + x y ci + x y ci + x y ci ci+1 = x y ci + x y ci + x y ci + x y ci จากฟงกชนบลลนขางตน เราสามารถเขยนรปวงจรได ในทนขอพจารณาการสรางตวบวกเตมจากตวบวกครง ถาเราใชตวบวกครงเพอบวก 3 บต เราจะไดโครงสรางวงจรงายๆ คอ

Page 15: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

15

ขางตนจะเหนวามตวทดออกเปน 2 บต ถาพจารณาใหดจะพบวาคาตวทดทง 2 บตนตองอยในรป 01 หรอ 00 เทานน เพราะการบวกบต 3 บตเขาดวยกนจะมตวทดไดอยางมากทสดเพยง 1 ตวทด ( กรณบวกบต 3 บตแลวไดผลลพธมากทสดคอ 1 + 1 + 1 = 11 ) ดงนนวงจรท ใชไดคอ

ผอานสามารถตรวจความถกตองของวงจรขางตน โดยการเขยนฟงกชนบลลน แลวพยายามลดรป หรอเปรยบเทยบกบฟงกชนบลลนทไดจากตาราง การลดรปวงจรตรรกะ ประสทธภาพของวงจรคอมมเนชนนอล ขนอยกบจานวนประตตรรกะและการจดรปวงจร วงจรทมจานวนประตนอยจะใชพลงงานนอย และมกจะใชเนอทนอยตามไปดวยวงจรทประตตรรกะตอเรยงกนเปนสายจะทางานชากวาวงจรทตอประตตรรกะเรยงกนเปนสายสนกวา ในหวขอนเราจะศกษาวธลดรปนพจนบลลนใหมรปแบบงายทสด เพอทจะใชสรางวงจรตรรกะทมประสทธภาพ ในการหาฟงกชนบลลนนน เราสามารถเรมไดจากตารางความสมพนธของสญญาณเขาและสญญาณออก ตารางนแสดงคาสญญาณออกสาหรบแตละคาประสมกนของสญญาณเขา (combination ของสญญาณเขา วงจรทไดจงเรยกวา combinational circuit) ตารางดงกลาวมชอเรยกวา ตารางจรงเทจ (truth table) จากตารางจรงเทจเราสามารถเขยนนพจนผลบวกของผลคณ แทนฟงกชนบลลนได นพจนดงกลาวมกจะยงไมอยในรปแบบทงายทสด เชน ถานพจนประกอบดวยพจนผลคณสองพจน ซงมตวแปรเดยวกนทกลบคากน เราสามารถละตวแปรนนไดลองพจารณานพจน x y z + x y z เราสามารถลดรปไดคอ x y z + x y z = xz( y + y ) = xz ⋅ 1 = xz

Page 16: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

16

ดงนนการสรางวงจรสาหรบฟงกชน x y z + x y z จงทาไดสองแบบ ดงรปท 6

รปท 6 วงจรแสดงแบบซงทางานไดผลเหมอนกน จากตวอยางขางตนจะเหนวา เราสามารถรวมพจนบางพจนในนพจนผลบวกของผลคณได วธการพนฐานทนยมใชทวไปในการลดรปนพจน คอการใชผงคารนอฟ (Karnaugh map) ซงเหมาะสาหรบลดรปผลบวกของผลคณ ทเกยวของกบตวแปรนอยกวาหรอเทากบ 6 ตว ขอเรมพจารณาฟงกชนบลลนแบบ 2 ตวแปรกอนคอ x และ y สาหรบฟงกชนแบบนจะมพจนสน (minterm - ผลคณของ literal ของทกตวแปร) ทงหมด 4 แบบ คอ x y, x y, x y และ x y ผงคารนอฟ ประกอบดวยชองสเหลยมจตรส โดยทแตละชองแทนหนงพจนสน ในกรณนผงคารนอฟม 4 ชอง การจดชองนนตองจดชองใหชองสองชองทตดกนใดๆ แทนพจนสนทม literal ของตวแปรเดยวกน แตมคาตรงกนขามเพยงหนงตว เชน ชองซงแทน x y ตองตดกบชอง x y และ x y รปท 7 แสดงผงคารนอฟสาหรบฟงกชนบลลน 2 ตวแปร

รปท 7 ผงคารนอฟสาหรบฟงกชนสองตวแปร

Page 17: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

17

ในรปท 7 แตละชองในผงมพจนสนกากบอย ในทางปฏบตเราสามารถละพจนสนทกากบนได ในการแทนฟงกชนบลลนดวยผงคารนอฟ ใหพจารณานพจนผลบวกของพจนสน เมอมพจนสนใดในฟงกชน กใหเขยน “ 1 “ ลงในชองซงแทนพจนสนนน ตวอยางท 15 ใหเขยนผงคารนอฟ แทนผลบวกของพจนสนตอไปน ซงแทนฟงกชนแบบ 2 ตวแปร : xy + x y, x y + x y และ x y + x y + x y จากวธทอธบายขางตนเราไดผงคารนอฟทงสามตามลาดบคอ

ในการรวมพจนสนทอยในผงคารนอฟ ใหพจารณชองทม “ 1 “ และอยตดกน 2 ชอง ชองทงสองนคอพจนสน 2 พจน ซงม literal ของตวแปรเดยวกนทมคาตรงขามกนหนงตว ( x กบ x หรอ y กบ y ) เราเขยนกรอบลอมรอบชองทงสองนเปนชองเดยว และแทนชองใหมนดวยผลคณบลลนของพจนสนของชวงเดมทงสอง ซงตด literal ทมคาตรงขามกนทงไป เชน ถาชอง x y และชอง x y มคาเปน “ 1 “ เราสามารถรวมชองทงสองเปนชองเดยวแลวเขยวแทนดวย y ( เหตผลกคอ x y + x y = (x + x) y = y) การรวมชองน จานวนชองทรวมตองมคาเปนเลข 2 ยกกาลง คอ 20, 21, 22, …ในกรณรวมสองชองกคอ 21 ดงนนการรวมชองจานวนมากถดขนไปคอ รวม 22 หรอ 4 ชองเปนชองเดยว คาทแทนชองใหมนคอ “ 1 “ ( นา x y, x y, x y และ x y มาคณกนโดยตด literal ของตวแปรเดยวกนทมคาตรงขามกนทง) ดงนนการลดรปโดยใชผงคารนอฟ ถาตองการผลลพธทซบซอนนอยทสด กตองรวมชองทอยตดกนใหมากทสดเทาทจะมากได ใหไดจานวนชองใหมนอยทสด ผลลพธกคอ ผลบวกของนพจนซงแทนแตละชองใหม ตวอยางท 16 ลดรปฟงกชนบลลนซงแทนโดยผงคารนอฟในตวอยางท 815 กรณท 1 ผลลพธคอ x y + x y = y

Page 18: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

18

กรณท 2 เนองจากชองทเปน “1“ ทงสองไมไดอยตดกนจงรวมชองไมได ผลลพธยงคงเดม กรณท3 ผลลพธคอ (x y + x y) + ( x y + x y) = x + y

ผงคารนอฟสาหรบฟงกชนบลลนสามตวแปร ผงคารนอฟสาหรบฟงกชนบลลนสามตวแปร ประกอบดวยชองสเหลยมจตรส 8 ชอง โดยทแตละชองแทนพจนสนขนาดตวแปร (มไดทงหมด 23 = 8 แบบ) การแสดงผงคารนอฟแบบสามตวแปรนยมแสดงตามรปท 8(a) ความจรงแลวการแสดงผงคารนอฟตองใหชองซงม literal ของตวแปรเดยวกนแตมคาตรงขามกนหนงตวแปรอยตดกน ดงนนชอง x y z ตองตดกบชอง x y z ตองตดกบชอง x y z จากรปท 8(a) เราสามารถมวนผงใหขอบซายยอนมาตดขอบขวาได กลายเปนรปท 8(b) ซงเปนผงคารนอฟทถกตอง อยางไรกตามการแสดงผงคารนอฟตามรปท 8(a) เปนแบบทใชกนทวไป

รปท 8 ผงคารนอฟสาหรบฟงกชนสามตวแปร ในการลดรปนพจน จะตองรวมชองทมคา “1” และอยตดกนเปนผนขนาด 2 ชอง 4 ชอง หรอ 8 ชอง เพอกาจดตวแปร 1 ตว 2 ตว หรอ 3 ตวตามลาดบ ตวแปรทกาจดกคอตวแปรในพจนสน ซงมคาตรงขามกนในผนทพจารณา ผลของผนรวมจะมคาเทากบผลคณของตวแปรท

Page 19: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

19

เหลอ ซงมคาตรงขามกนในผนทพจารณา ผลของผนรวมจะมคาเทากบผลคณของตวแปรทเหลอ รปท 9(a) และ 9(b) แสดงผนรวมขนาด 2 ชอง รปท 9(c)และ 9(d) แสดงผนรวมขนาด 4 ชอง และรปท 9 (e) แสดงผนรวมขนาด 8 ชอง

รปท 9 ตวอยางการลดรปในผงคารนอฟขนาดสามตวแปร การลดรปคอ การหาผนรวมจานวนนอยผนทสด โดยทแตละผนมขนาดใหญทสด ตวอยางท 17 ใชผงคารนอฟในการลดรปผลบวกของผลคณสาหรบฟงกชนสามตวแปร ตามขอ a-d ในรปท 8

Page 20: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

20

สาหรบกรณสตวแปร ผงคารนอฟมกแสดงดวยผนสเหลยมจตรสขนาด 4×4 ชองโดยทแตละชองแทนหนงพจนสนดงรปท 10

รปท 10 ผงคารนอฟสาหรบฟงกชนสตวแปร ความจรงแลวชองหนงชองในผลคารนอฟจะตองอยตดกบชองทมคาตวแปรตางกนหนงตวในกรณฟงกชนสตวแปร ชองหนงชองตองอยตดกบชองอนๆ อกสชอง ดงนนผงคารนอฟทถกตองในรปท 8.10 ตองมวนขอบซายมาชดขอบขวา แลวมวนขอบบนมาชดขอบลาง รปทไดจะเปนเหมอนโดนท ซงตามภาษาคณตศาสตร เรยกวา ทอรส (torus) อยางไรกตามเมอแสดงในสองมตเรามกจะแทนเปนสเหลยมจตรสขนาด 4×4 การลดรปนพจนกทาไดทานองเดยวกบกรณฟงกชนสามตวแปร คอ รวมชองทมคา “1” และอยตดน เปนผนขนาด 2 ชอง, 4 ชอง, 8 ชอง หรอ 16 ชอง เพอกาจดตวแปร 1 ตว, 2 ตว, 3 ตว หรอ 4 ตว ตามลาดบ จดมงหมายกคอตองการจานวนผนนอยทสดโดยทแตละผนมขนาดใหญทสด รปท 11 แสดงตวอยางการรวมชองดงกลาว

Page 21: พีชคณิตบูลลีน (Boolean Algebra)seree/310205/chap13.pdf · พีชคณิตบูลลีน (Boolean Algebra) • เครื่องคอมพ

21

รปท 11 ตวอยางการลดรปในผงคารนอฟขนาดสตวแปร ตวอยางท 18 ใชผงคารนอฟในการลดรปผลบวกของผลคณสาหรบฟงกชนสตวแปร