วงจรลบเลขเต็ม (Full Subtractor) ในตรรกะดิจิทัล

เรียนรู้วิธีที่ตัวลบแบบเต็มจัดการกับการคำนวณเลขฐานสองที่ซับซ้อน

วงจรลบเลขเต็ม (Full Subtractor) ในตรรกะดิจิทัล

วงจรลบเลขฐานสอง (Total Subtractor)เป็นวงจรเชิงรวม (Combinational Circuit) ที่ใช้ในการลบเลขฐานสอง มีอินพุตสามตัว:

  • เอ (แพ้)
  • B (ยกเว้น)
  • บี-อิน (ยืมจากขั้นตอนก่อนหน้า)

มันสร้างผลลัพธ์สองอย่าง:

  • ผลต่าง (D):ผลลัพธ์ของการลบ
  • การยืมออก (B-OUT):บ่งชี้ว่าจำเป็นต้องยืมเงินเพิ่มเติมสำหรับขั้นตอนต่อไปหรือไม่

ตัวลบแบบเต็มมีความสำคัญอย่างยิ่ง เนื่องจากตัวลบแบบครึ่งสามารถลบได้เฉพาะบิตที่มีค่าต่ำที่สุด (LSB) ของเลขฐานสองเท่านั้น อย่างไรก็ตาม หากมีการสร้างบิตที่ยืมมาในระหว่างการลบ LSB บิตนั้นจะส่งผลต่อการลบในขั้นตอนถัดไปตัวลบแบบเต็มจะจัดการกับสถานการณ์นี้โดยพิจารณาบิตที่ยืมมาจากขั้นตอนก่อนหน้า ทำให้มั่นใจได้ว่าการลบจะถูกต้องแม่นยำแม้จะมีบิตที่ยืมมาอยู่ก็ตาม

ตัวลบแบบเต็ม (Full subtractor) ใช้สำหรับลบเลขฐานสองที่มีการยืม ทำให้เหมาะอย่างยิ่งสำหรับการลบหลายบิตในวงจรดิจิทัล เช่นหน่วยคำนวณและตรรกะ (ALU )

ตัวลบรวมในตรรกะดิจิทัล

ตารางความจริงของการลบทั้งหมด

แผนที่ K อนุญาตให้ทำการลบทั้งหมดได้

จากตารางด้านบน เราสามารถสร้างแผนที่คาร์โนห์เพื่อแสดงภาพ "ผลกระทบ" และ "การยืม" ได้

แผนที่ K สำหรับความแตกต่าง

นิพจน์ตรรกะสำหรับความแตกต่าง

สำนวนพื้นฐานคือ :

D = A'B'Bin + A'BBin' + AB'Bin' + ABBin

แยกตัวประกอบของพจน์ร่วม :

D = บาร์เรล(A'B' + AB) + บาร์เรล'(AB' + A'B)

ระบุคุณสมบัติของการดำเนินการ XOR และ XNOR :

A'B' + AB = A XOR B
AB' + A'B = A XOR B

แทนที่ค่าเหล่านี้ :

D = Bin(A XNOR B) + Bin' (A XOR B)

การใช้ตัวระบุ XNOR :

D = Bin ⊕ (A ⊕ B)

ดังนั้น นิพจน์ที่ง่ายที่สุดสำหรับความแตกต่างของการลบทั้งหมดคือ:
D = (A ⊕ B) ⊕ Bin

สามารถยืมแผนที่ K ได้

นิพจน์ตรรกะสำหรับคำยืม

ผลลัพธ์ของฟังก์ชันการยืม (Bout)คำนวณได้ดังนี้:

นิพจน์พื้นฐาน :

การต่อสู้ = A'B'Bin + A'BBin' + A'BBin + ABBin

แยกตัวประกอบของพจน์ร่วม :

Bout = A'Bin(B + B') + A'B(Bin + Bin') + BBin(A + A')

โดย สรุป

Bout = A'Bin + A'B + BBin

อีกทางเลือกหนึ่ง เราสามารถใช้วิธีการอื่นได้เช่นกัน :

การต่อสู้ = A'B'Bin + A'BBin' + A'BBin + ABBin

แยกตัวประกอบของพจน์ร่วม :

Bout = Bin(AB + A'B') + A'B(Bin + Bin')

โดยใช้คุณสมบัติ XOR และ XNOR :

AB + A'B' = A XNOR B

แทนที่ค่าเหล่านี้ :

Bout = Bin(A XNOR B) + A'B

การใช้ตัวระบุ XNOR :

Bout = Bin (A XOR B)' + A'B

ดังนั้น นิพจน์ที่ง่ายที่สุดสำหรับจำนวนที่ยืมมาในการลบทั้งหมดคือ:

วงจรตรรกะสำหรับการลบทั้งหมด

วงจรตรรกะสำหรับการลบทั้งหมด

ทำการลบทั้งหมดโดยใช้การลบครึ่งหนึ่ง

ในการสร้างวงจรลบแบบสมบูรณ์ คุณต้องใช้วงจรลบครึ่งวงจรสองวงจรและเกต OR หนึ่งตัว

ทำการลบทั้งหมดโดยใช้การลบครึ่งหนึ่ง

‍

บทความที่เกี่ยวข้อง

วงจรลบเลขเต็ม (Full Subtractor) ในตรรกะดิจิทัล

เรียนรู้วิธีที่ตัวลบแบบเต็มจัดการกับการคำนวณเลขฐานสองที่ซับซ้อน

นักเขียนบทความ
by 
นักเขียนบทความ
วงจรลบเลขเต็ม (Full Subtractor) ในตรรกะดิจิทัล

วงจรลบเลขเต็ม (Full Subtractor) ในตรรกะดิจิทัล

เรียนรู้วิธีที่ตัวลบแบบเต็มจัดการกับการคำนวณเลขฐานสองที่ซับซ้อน

วงจรลบเลขฐานสอง (Total Subtractor)เป็นวงจรเชิงรวม (Combinational Circuit) ที่ใช้ในการลบเลขฐานสอง มีอินพุตสามตัว:

  • เอ (แพ้)
  • B (ยกเว้น)
  • บี-อิน (ยืมจากขั้นตอนก่อนหน้า)

มันสร้างผลลัพธ์สองอย่าง:

  • ผลต่าง (D):ผลลัพธ์ของการลบ
  • การยืมออก (B-OUT):บ่งชี้ว่าจำเป็นต้องยืมเงินเพิ่มเติมสำหรับขั้นตอนต่อไปหรือไม่

ตัวลบแบบเต็มมีความสำคัญอย่างยิ่ง เนื่องจากตัวลบแบบครึ่งสามารถลบได้เฉพาะบิตที่มีค่าต่ำที่สุด (LSB) ของเลขฐานสองเท่านั้น อย่างไรก็ตาม หากมีการสร้างบิตที่ยืมมาในระหว่างการลบ LSB บิตนั้นจะส่งผลต่อการลบในขั้นตอนถัดไปตัวลบแบบเต็มจะจัดการกับสถานการณ์นี้โดยพิจารณาบิตที่ยืมมาจากขั้นตอนก่อนหน้า ทำให้มั่นใจได้ว่าการลบจะถูกต้องแม่นยำแม้จะมีบิตที่ยืมมาอยู่ก็ตาม

ตัวลบแบบเต็ม (Full subtractor) ใช้สำหรับลบเลขฐานสองที่มีการยืม ทำให้เหมาะอย่างยิ่งสำหรับการลบหลายบิตในวงจรดิจิทัล เช่นหน่วยคำนวณและตรรกะ (ALU )

ตัวลบรวมในตรรกะดิจิทัล

ตารางความจริงของการลบทั้งหมด

แผนที่ K อนุญาตให้ทำการลบทั้งหมดได้

จากตารางด้านบน เราสามารถสร้างแผนที่คาร์โนห์เพื่อแสดงภาพ "ผลกระทบ" และ "การยืม" ได้

แผนที่ K สำหรับความแตกต่าง

นิพจน์ตรรกะสำหรับความแตกต่าง

สำนวนพื้นฐานคือ :

D = A'B'Bin + A'BBin' + AB'Bin' + ABBin

แยกตัวประกอบของพจน์ร่วม :

D = บาร์เรล(A'B' + AB) + บาร์เรล'(AB' + A'B)

ระบุคุณสมบัติของการดำเนินการ XOR และ XNOR :

A'B' + AB = A XOR B
AB' + A'B = A XOR B

แทนที่ค่าเหล่านี้ :

D = Bin(A XNOR B) + Bin' (A XOR B)

การใช้ตัวระบุ XNOR :

D = Bin ⊕ (A ⊕ B)

ดังนั้น นิพจน์ที่ง่ายที่สุดสำหรับความแตกต่างของการลบทั้งหมดคือ:
D = (A ⊕ B) ⊕ Bin

สามารถยืมแผนที่ K ได้

นิพจน์ตรรกะสำหรับคำยืม

ผลลัพธ์ของฟังก์ชันการยืม (Bout)คำนวณได้ดังนี้:

นิพจน์พื้นฐาน :

การต่อสู้ = A'B'Bin + A'BBin' + A'BBin + ABBin

แยกตัวประกอบของพจน์ร่วม :

Bout = A'Bin(B + B') + A'B(Bin + Bin') + BBin(A + A')

โดย สรุป

Bout = A'Bin + A'B + BBin

อีกทางเลือกหนึ่ง เราสามารถใช้วิธีการอื่นได้เช่นกัน :

การต่อสู้ = A'B'Bin + A'BBin' + A'BBin + ABBin

แยกตัวประกอบของพจน์ร่วม :

Bout = Bin(AB + A'B') + A'B(Bin + Bin')

โดยใช้คุณสมบัติ XOR และ XNOR :

AB + A'B' = A XNOR B

แทนที่ค่าเหล่านี้ :

Bout = Bin(A XNOR B) + A'B

การใช้ตัวระบุ XNOR :

Bout = Bin (A XOR B)' + A'B

ดังนั้น นิพจน์ที่ง่ายที่สุดสำหรับจำนวนที่ยืมมาในการลบทั้งหมดคือ:

วงจรตรรกะสำหรับการลบทั้งหมด

วงจรตรรกะสำหรับการลบทั้งหมด

ทำการลบทั้งหมดโดยใช้การลบครึ่งหนึ่ง

ในการสร้างวงจรลบแบบสมบูรณ์ คุณต้องใช้วงจรลบครึ่งวงจรสองวงจรและเกต OR หนึ่งตัว

ทำการลบทั้งหมดโดยใช้การลบครึ่งหนึ่ง

‍

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

วงจรลบเลขเต็ม (Full Subtractor) ในตรรกะดิจิทัล

วงจรลบเลขเต็ม (Full Subtractor) ในตรรกะดิจิทัล

เรียนรู้วิธีที่ตัวลบแบบเต็มจัดการกับการคำนวณเลขฐานสองที่ซับซ้อน

Lorem ipsum dolor amet consectetur adipiscing elit tortor massa arcu non.

วงจรลบเลขฐานสอง (Total Subtractor)เป็นวงจรเชิงรวม (Combinational Circuit) ที่ใช้ในการลบเลขฐานสอง มีอินพุตสามตัว:

  • เอ (แพ้)
  • B (ยกเว้น)
  • บี-อิน (ยืมจากขั้นตอนก่อนหน้า)

มันสร้างผลลัพธ์สองอย่าง:

  • ผลต่าง (D):ผลลัพธ์ของการลบ
  • การยืมออก (B-OUT):บ่งชี้ว่าจำเป็นต้องยืมเงินเพิ่มเติมสำหรับขั้นตอนต่อไปหรือไม่

ตัวลบแบบเต็มมีความสำคัญอย่างยิ่ง เนื่องจากตัวลบแบบครึ่งสามารถลบได้เฉพาะบิตที่มีค่าต่ำที่สุด (LSB) ของเลขฐานสองเท่านั้น อย่างไรก็ตาม หากมีการสร้างบิตที่ยืมมาในระหว่างการลบ LSB บิตนั้นจะส่งผลต่อการลบในขั้นตอนถัดไปตัวลบแบบเต็มจะจัดการกับสถานการณ์นี้โดยพิจารณาบิตที่ยืมมาจากขั้นตอนก่อนหน้า ทำให้มั่นใจได้ว่าการลบจะถูกต้องแม่นยำแม้จะมีบิตที่ยืมมาอยู่ก็ตาม

ตัวลบแบบเต็ม (Full subtractor) ใช้สำหรับลบเลขฐานสองที่มีการยืม ทำให้เหมาะอย่างยิ่งสำหรับการลบหลายบิตในวงจรดิจิทัล เช่นหน่วยคำนวณและตรรกะ (ALU )

ตัวลบรวมในตรรกะดิจิทัล

ตารางความจริงของการลบทั้งหมด

แผนที่ K อนุญาตให้ทำการลบทั้งหมดได้

จากตารางด้านบน เราสามารถสร้างแผนที่คาร์โนห์เพื่อแสดงภาพ "ผลกระทบ" และ "การยืม" ได้

แผนที่ K สำหรับความแตกต่าง

นิพจน์ตรรกะสำหรับความแตกต่าง

สำนวนพื้นฐานคือ :

D = A'B'Bin + A'BBin' + AB'Bin' + ABBin

แยกตัวประกอบของพจน์ร่วม :

D = บาร์เรล(A'B' + AB) + บาร์เรล'(AB' + A'B)

ระบุคุณสมบัติของการดำเนินการ XOR และ XNOR :

A'B' + AB = A XOR B
AB' + A'B = A XOR B

แทนที่ค่าเหล่านี้ :

D = Bin(A XNOR B) + Bin' (A XOR B)

การใช้ตัวระบุ XNOR :

D = Bin ⊕ (A ⊕ B)

ดังนั้น นิพจน์ที่ง่ายที่สุดสำหรับความแตกต่างของการลบทั้งหมดคือ:
D = (A ⊕ B) ⊕ Bin

สามารถยืมแผนที่ K ได้

นิพจน์ตรรกะสำหรับคำยืม

ผลลัพธ์ของฟังก์ชันการยืม (Bout)คำนวณได้ดังนี้:

นิพจน์พื้นฐาน :

การต่อสู้ = A'B'Bin + A'BBin' + A'BBin + ABBin

แยกตัวประกอบของพจน์ร่วม :

Bout = A'Bin(B + B') + A'B(Bin + Bin') + BBin(A + A')

โดย สรุป

Bout = A'Bin + A'B + BBin

อีกทางเลือกหนึ่ง เราสามารถใช้วิธีการอื่นได้เช่นกัน :

การต่อสู้ = A'B'Bin + A'BBin' + A'BBin + ABBin

แยกตัวประกอบของพจน์ร่วม :

Bout = Bin(AB + A'B') + A'B(Bin + Bin')

โดยใช้คุณสมบัติ XOR และ XNOR :

AB + A'B' = A XNOR B

แทนที่ค่าเหล่านี้ :

Bout = Bin(A XNOR B) + A'B

การใช้ตัวระบุ XNOR :

Bout = Bin (A XOR B)' + A'B

ดังนั้น นิพจน์ที่ง่ายที่สุดสำหรับจำนวนที่ยืมมาในการลบทั้งหมดคือ:

วงจรตรรกะสำหรับการลบทั้งหมด

วงจรตรรกะสำหรับการลบทั้งหมด

ทำการลบทั้งหมดโดยใช้การลบครึ่งหนึ่ง

ในการสร้างวงจรลบแบบสมบูรณ์ คุณต้องใช้วงจรลบครึ่งวงจรสองวงจรและเกต OR หนึ่งตัว

ทำการลบทั้งหมดโดยใช้การลบครึ่งหนึ่ง

‍