POS และ SOP

จากวิกิพีเดีย สารานุกรมเสรี

บทความนี้ได้รับแจ้งว่า การใช้ภาษา การแปลภาษา การทับศัพท์ หรือการสะกดคำ สามารถปรับปรุงให้ดีขึ้นได้ ซึ่งอาจรวมถึงรูปแบบการเขียนที่อาจไม่ใช่สารานุกรม
คุณสามารถช่วยแก้ไขปัญหานี้ได้! โดยการกดที่ปุ่ม แก้ไข ด้านบน จากนั้นแก้ไขภาษาให้สละสลวย และแก้ตัวสะกดให้ถูกต้อง
ดูรายละเอียดเพิ่มเติมได้ที่ คู่มือ และ นโยบายวิกิพีเดีย

สารบัญ

[แก้] SOP and POS

  • SOP - Sum of product ผลบวกของผลคูณ
  • POS - Product of sum ผลคูณของผลบวก

SOP และ POS เป็นสมการหรือฟังก์ชันลอจิก ซึ่งมีโครงสร้างคล้ายกับสมการคณิตศาสตร์อื่น ๆ คือประกอบด้วย

  1. ตัวแปร(Input หรือ Variable) จะเขียนแทนด้วยตัวอักษรภาษาอังกฤษ เช่น A, B, C, x, y, z เป็นต้น
    • ตัวแปรที่อยู่ในรูปแบบปกติ เช่น A, B, C, x, y, z เป็นต้น
    • ตัวแปรที่อยู่ในรูปแบบคอมพลีเมนต์ เช่น A', B', C', x', y', z' เป็นต้น
  2. ค่าคงที่(Constant) จะมีเพียงสองค่าเท่านั้น คือ 0 และ 1 ซึ่งเป็นเลขฐานสองนั่นเอง
    • ตัวแปรที่อยู่ในรูปแบบปกติ เขียนแทนด้วย 1 เช่น A เขียนแทนด้วย 1 เป็นต้น
    • ตัวแปรที่อยู่ในรูปแบบคอมพลีเมนต์ เขียนแทนด้วย 0 เช่น A' เขียนแทนด้วย 0 เป็นต้น
  3. ตัวดำเนินการ(Operator) มีเพียงสองตัวเท่านั้น คือ AND (•) และ OR (+)

[แก้] SOP - Sum of product ผลบวกของผลคูณ หรือเรียกว่า Minterm

  • SOP เป็นรูปแบบสมการที่ในแต่ละเทอมจะอยู่ในรูป AND และนำแต่ละเทอมมา OR กัน ( AND ก่อน OR ทีหลัง)
  • เทอมที่มีตัวแปรครบทุกตัวเรียกว่า Minterm
  • สมการที่มีทุกเทอมเป็น Minterm เรียกสมการนั้นว่า Canonical sum หรือ Standard SOP
  • ตัวอย่างสมการ SOP
    • f(A,B,C) = ABC+A'+BC'
    • f(A,B,C) = BC+A'B
    • f(A,B,C) = A+BC'
    • f(A,B,C) = ABC+A'BC+A'B'C'
  • Standard SOP
    • คือสมการแบบ SOP ที่ทุกๆเทอมของสมการจะต้องมีตัวแปรครบทุกตัวในฟังก์ชันนั้น หรือทุกเทอมเป็น Minterm
    • จะประกอบด้วยจำนวน Minterm ≤ 2n เมื่อ n คือจำนวนตัวแปรทั้งหมดของสมการหรือฟังก์ชัน
    • ตัวอย่างเช่น f(A,B,C) = A'B'C' + ABC' + ABC จะเห็นได้ว่าทุกเทอมของสมการมีตัวแปรครบทุกตัวตามฟังก์ชัน แต่ถ้ามีบางเทอมของสมการมีตัวแปรไม่ครบทุกตัว เราสามารถที่จะขยายสมการให้ครบได้โดยการคูณด้วย 1 (X+X') เข้าไป โดยที่ X คือตัวแปรที่ขาด ตัวอย่างเช่น
    f(A,B,C) = A'B'C' + AB จะเห็นได้ว่าเทอม AB ขาดตัวแปร C
  วิธีทำ f(A,B,C) = A'B'C' + AB(C+C')
               = A'B'C' + ABC + ABC'  จะได้สมการ Standard SOP
  • การเขียนสมการ SOP จากตารางค่าความจริง(Truth Table)
  A     B     C     f(A,B,C)  
0 0 0 1
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 0
    • นำค่า output ในบรรทัดที่เป็น 1 ของฟังก์ชันในตารางค่าความจริงมาเขียนเป็น Standard SOP ซึ่ง 1 แทนตัวแปรที่อยู่ในรูปแบบปกติ เช่น A, B, C และ 0 แทนตัวแปรที่อยู่ในรูปแบบคอมพลีเมนต์ เช่น A', B', C' ได้ดังนี้
             f(A,B,C) = A'B'C' + A'B'C + A'BC + AB'C + ABC' 
  • การใช้ตัวเลขแทนสมการ SOP

เราสามารถเขียนสมการตัวเลขแทนสมการ SOP ได้โดยการกำหนดเครื่องหมาย ∑ เข้ากับกลุ่มตัวเลขประจำบรรทัดของตารางความจริงในช่องที่มี output เป็น 1 ตัวอย่างเช่น

  A     B     C     f(A,B,C)  
0 0 0 1
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
   f(A,B,C) = A'B'C' + A'BC + AB'C' + ABC' + ABC
            = 000    + 011  + 100   + 110  + 111
            =  0        3      4       6      7
   f(A,B,C) = ∑(0,3,4,6,7)

[แก้] POS - Product of sum ผลคูณของผลบวก หรือเรียกว่า Maxterm

  • POS เป็นรูปแบบสมการที่ในแต่ละเทอมจะอยู่ในรูป OR และนำแต่ละเทอมมา AND กัน ( OR ก่อน AND ทีหลัง)
  • เทอมที่มีตัวแปรครบทุกตัวเรียกว่า Maxterm
  • สมการที่มีทุกเทอมเป็น Maxterm เรียกสมการนั้นว่า Canonical product หรือ Standard POS
  • ตัวอย่างสมการ POS
    • f(A,B,C) = (A+B+C)(A+B+C')(A+B)
    • f(A,B,C) = (B+C)(A'+B)
    • f(A,B,C) = (A+B)(A'+C')(B')
    • f(A,B,C) = (A+B+C)(A'+B+C)(A'+B'+C')
  • Standard POS
    • คือสมการแบบ POS ที่ทุกๆเทอมของสมการจะต้องมีตัวแปรครบทุกตัวในฟังก์ชันนั้น หรือทุกเทอมเป็น Maxterm
    • จะประกอบด้วยจำนวน Maxterm ≤ 2nเมื่อ n คือจำนวนตัวแปรทั้งหมดของสมการหรือฟังก์ชัน
    • ตัวอย่างเช่น f(A,B,C) = (A'+B'+C')(A+B+C')(A+B+C) จะเห็นได้ว่าทุกเทอมของสมการมีตัวแปรครบทุกตัวตามฟังก์ชัน แต่ถ้ามีบางเทอมของสมการมีตัวแปรไม่ครบทุกตัว เราสามารถที่จะขยายสมการให้ครบได้โดยการบวกด้วย 0 (X•X') เข้าไป โดยที่ X คือตัวแปรที่ขาด ตัวอย่างเช่น
      f(A,B,C) = (A'+B'+C')(A+B) จะเห็นได้ว่าเทอม AB ขาดตัวแปร C
   วิธีทำ f(A,B,C) = (A'+B'+C')(A+B+(C•C'))
                = (A'+B'+C')(A+B+C)(A+B+C')  จะได้สมการ Standard POS
  • การเขียนสมการ POS จากตารางค่าความจริง(Truth Table)
  A     B     C     f(A,B,C)  
0 0 0 1
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 0
    • นำค่า output ในบรรทัดที่เป็น 0 ของฟังก์ชันในตารางค่าความจริงมาเขียนเป็น Standard POS ซึ่ง 0 แทนตัวแปรที่อยู่ในรูปแบบปกติ เช่น A, B, C และ 1 แทนตัวแปรที่อยู่ในรูปแบบคอมพลีเมนต์ เช่น A', B', C' ได้ดังนี้
            f(A,B,C) = (A+B'+C)(A'+B+C)(A'+B'+C') 
  • การใช้ตัวเลขแทนสมการ POS

เราสามารถเขียนสมการตัวเลขแทนสมการ POS ได้โดยการกำหนดเครื่องหมาย π เข้ากับกลุ่มตัวเลขประจำบรรทัดของตารางความจริงในช่องที่มี output เป็น 0 ตัวอย่างเช่น

  A     B     C     f(A,B,C)  
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 0
   f(A,B,C) = (A'+B'+C')(A'+B+C)(A+B'+C')(A+B+C')(A+B+C)
            =    111      100      011      001    000
            =     7        4        3        1      0
   f(A,B,C) = π(0,1,3,4,7)

[แก้] Convert SOP to POS

  • ทำสมการ SOP ให้เป็น Standard SOP
  • หาจำนวนเทอมสูงสุดของสมการ = 2nเมื่อ n คือจำนวนตัวแปรทั้งหมดของสมการหรือฟังก์ชัน หาจำนวน Maxterm ของสมการ POS ซึ่งเท่ากับ 2n - จำนวน Minterm
  • แปลงรูประหว่าง Minterm ไปเป็น Maxterm โดยใช้สูตร
   f(ตัวแปร n ตัว) = ∑(ตัวเลขประจำบรรทัดของสมการ SOP 2n ตัว) 
              = π(ตัวเลขประจำบรรทัดของสมการ SOP 2n ตัว)'
  • ตัวอย่างเช่น
   f(A,B,C) = A'B'C +  A'BC + ABC 
          = 001      011    111
          =  1        3      7
          = ∑(1,3,7)
          = π(1,3,7)'
          = π(0,2,4,5,6 )
          =   000    010      100     101      110
          = (A+B+C)(A+B'+C)(A'+B+C)(A'+B+C')(A'+B'+C)

[แก้] Convert POS to SOP

  • ทำสมการ POS ให้เป็น Standard POS
  • หาจำนวนเทอมสูงสุดของสมการ = 2nเมื่อ n คือจำนวนตัวแปรทั้งหมดของสมการหรือฟังก์ชัน หาจำนวน Minterm ของสมการ SOP ซึ่งเท่ากับ 2n - จำนวน Maxterm
  • แปลงรูประหว่าง Maxterm ไปเป็น Minterm โดยใช้สูตร
   f(ตัวแปร n ตัว)  = π(ตัวเลขประจำบรรทัดของสมการ POS 2n ตัว)
               = ∑(ตัวเลขประจำบรรทัดของสมการ POS 2n ตัว)'
  • ตัวอย่างเช่น
   f(A,B,C) = (A+B+C)(A+B'+C)(A'+B+C)(A'+B+C')(A'+B'+C) 
          =   000    010      100     101      110 
          =    0      2        4       5        6
          = π(0,2,4,5,6)
          = ∑(0,2,4,5,6)'
          = ∑(1,3,7)
          =  001     011    111
          = A'B'C +  A'BC + ABC