ดร.สุรศักดิ์ มังสิงห์ SPU, Computer Science Dept. MAT 231: คณิตศาสตร์ไม่ต่อเนื่อง (7) คณิตศาสตร์บลูลีน & วงจรผสม (Boolean & Combinatorial Circuit) ดร.ธนา สุขวารี ดร.สุรศักดิ์ มังสิงห์ SPU, Computer Science Dept.
วัตถุประสงค์ เพื่อศึกษาเกี่ยวกับพีชคณิตบูลลีน ประยุกต์หลักการคณิตศาสตร์เชิงตรรก พีชคณิตบูลลีนกับการทำงานวงจรตรรก วงจรผสมและการลดรูปวงจรผสม
พีชคณิตบูลลีน การทำงานของคอมพิวเตอร์ประกอบด้วยวงจรไฟฟ้า วงจรเหล่านี้ประกอบด้วยชิ้นส่วนที่รับข้อมูลเข้า และส่งข้อมูลที่เป็นผลลัพธ์ออก โดยข้อมูลเหล่านี้แทนด้วย 2 สถานะ คือ 0 หรือ 1 พีชคณิตบูลลีน แสดงนิพจน์โดยอาศัยหลักการทางตรรกศาสตร์ ที่สอดคล้องกับการทำงานของวงจรตรรก สามารถตรวจสอบการทำงานของวงจรตรรกได้ โดยแปลงวงจรตรรกให้อยู่ในรูปนิพจน์บูลลีน
วงจรตรรก VS. พีชคณิตบูลลีน F T A^B B A AND AVB OR ~A NOT วงจรตรรก ตรรกะ พีชคณิตบูลลีน
พีชคณิตบูลลีน พีชคณิตบูลลีน S ประกอบด้วยเซต S = {0, 1} ตัวดำเนินการทวิภาค + และ * บน S และตัวดำเนินการเดี่ยว ' บน S ซึ่งสอดคล้องกับเงื่อนไขต่อไปนี้ สำหรับทุก กฎการเปลี่ยนกลุ่ม (Associative laws) (x + y) + z = x + (y + z), 2. กฎการสลับที่ (Commutative laws) x + y = y + x 3. กฎการแจกแจง (Distributive laws) 4. กฎของเอกลักษณ์ (Identity laws) x + 0 = x 5. กฎส่วนเติมเต็ม (Complement laws) x + x' = 1 ถ้า S เป็นพีชคณิตบูลลีน เราเขียน S แทน (S: +,*,')
ตัวดำเนินการบูลลีน นิพจน์บูลลีนใช้ตัวดำเนินการพื้นฐาน 3 ตัวดำเนินการ คือ “+” “ * ” และ “ ' ” ตรงกับตัวเชื่อมในทางตรรกศาสตร์ “OR ” “AND ” และ “~” ตามลำดับ เปลี่ยนนิพจน์บูลลีนเป็นวงจรลอจิกหรือวงจรตรรกะ ตัวเชื่อม +, *, ~ จะตรงกับประตูสัญญาณออร์ (OR gate) ประตูสัญญาณแอนด์ (AND gate) และประตูสัญญาณน็อต (NOT gate) หรือ ตัวแปลง (Inverter) ตามลำดับ
ตัวดำเนินการบูลลีน VS. logical gates
ตัวดำเนินการบูลลีน VS. logical gates NAND table ?
3-input AND gate ตัวอย่าง1: จงหาค่าของฟังก์ชันบูลลีน พร้อมวาดรูปวงจรตรรกะ
3-input logical gate ตัวอย่าง2: ถ้าค่าที่เข้ามามี 3 ค่า คือ A, B, C จงวาดรูปวงจรตรรกะของ X= ((A+B+C)')'
วงจรผสม วงจรตรรกะของระบบดิจิตอลได้นำประตูสัญญาณพื้นฐาน 3 ประตู คือ ประตูสัญญาณออร์ ประตูสัญญาณแอนด์และประตูสัญญาณน็อตมาเชื่อมต่อกัน ซึ่งทำให้วงจรตรรกะมีความซับซ้อนมากขึ้นเรียนว่า วงจรผสม (combinatorial circuit) ถ้าเราต้องการลดความซับซ้อนของวงจรตรรกะจะเปลี่ยนวงจรดังกล่าวให้อยู่ในรูปนิพจน์บูลลีน แล้วใช้ทฤษฎีบททางพีชคณิตบูลลีนลดรูปให้อยู่ในรูปอย่างง่าย
วงจรตรรกะและนิพจน์บูลลีนที่สมนัยกัน ตัวอย่าง 3: วงจรตรรกะและนิพจน์บูลลีนที่สมนัยกัน
วงจรตรรกะและนิพจน์บูลลีนที่สมนัยกัน ตัวอย่าง 4: วงจรตรรกะและนิพจน์บูลลีนที่สมนัยกัน
วงจรตรรกะและนิพจน์บูลลีนที่สมนัยกัน ตัวอย่าง 5: จงหาวงจรตรรกะและนิพจน์บูลลีนที่สมนัยกันของนิพจน์ X = A'BC (A+D)' ให้ A = 0, B = 1, C = 1 และ D = 1 วงจรที่สมนัย ?
วงจรตรรกะและนิพจน์บูลลีนที่สมนัยกัน ตัวอย่าง 6: จงเขียนแผนภาพวงจรตรรกะของนิพจน์บูลลีน พร้อมทั้งหาผลลัพธ์เมื่อกำหนดให้A = 0, B = 1, C = 1 และ D = 1 วงจรที่สมนัย ?
วงจรตรรกะและนิพจน์บูลลีนที่สมนัยกัน ตัวอย่าง 7: จงเขียนแผนภาพวงจรตรรกะของนิพจน์บูลลีน พร้อมทั้งหาผลลัพธ์เมื่อกำหนดให้A = 0, B = 1, C = 1 และ D = 1
Quiz จงเขียนแผนภาพวงจรตรรกะของนิพจน์บูลลีน
ทฤษฎีบทของพีชคณิตบูลลีน
การลดรูปพีชคณิตบูลลีน ตัวอย่าง 8:
การลดรูปพีชคณิตบูลลีน ตัวอย่าง 9: x(y+z) = xy+xz
การลดรูปพีชคณิตบูลลีน โดยใช้ทฤษฎีบทของพีชคณิตบูล ตัวอย่าง 10: (w+x) (y+z) = wy+xy+wz+xz)
การลดรูปพีชคณิตบูลลีน ตัวอย่าง11: จากนิพจน์บูลลีนจงเขียนวงจรตรรกที่สอดคล้องกับนิพจน์ทางซ้ายและนิพจน์ทางขวา (w+x) (y+z) = wy+xy+wz+xz) วงจรใดใช้จำนวน gate น้อยกว่ากัน ?
การลดรูปพีชคณิตบูลลีน โดยใช้ทฤษฎีบทของพีชคณิตบูล ตัวอย่าง 12: [(A’+C) (B+D’)]’ = (AC’ + B’D)
การลดรูปพีชคณิตบูลลีน โดยใช้ทฤษฎีบทของพีชคณิตบูล ตัวอย่าง 13: จากนิพจน์บูลลีนจงเขียนวงจรตรรกที่สอดคล้องกับนิพจน์ทางซ้ายและนิพจน์ทางขวา [(A’+C) (B+D’)]’ = (AC’ + B’D) วงจรใดใช้จำนวน gate น้อยกว่ากัน ?
แบบฝึกหัดท้ายบท [1] จงแสดงวงจรผสมที่สอดคล้องกับพีชคณิตบูลลีนที่กำหนดให้ต่อไปนี้ 1.1 ABC + AC΄ + AB 1.2 (A+B)C + (A+B)C 1.3 (AB + AC + AD)΄ [2] เมื่อกำหนดให้ A=0, B=1, C=0 และ D=0 จงแสดงการหาค่าผลลัพธ์ของพีชคณิตบูลลีนในข้อที่ 2 [3] จงวาดรูปแผนภาพวงจรอย่างง่ายที่มีจำนวนประตูสัญญาณน้อยที่สุด ที่ให้สอดคล้องกับนิพจน์บูลลีน AB+BC(B+C)