เนื่องจากเลข binary เป็ระบบตัวเลขที่ใช้ในเครื่อง computer ดังนั้น เมื่อใช้เครื่องcomputer ทำการลบเลข binary ก็ต้องมีวงจรลบแยกออกต่างหากจากวงจรบวก ซึ่งจะมีความยุ่งยากเกิดขึ้น เพราะมีเครื่องหมายติดมาด้วย วิธีที่นิยมก็คือ การบวกหรืแการลบ เราใช้วิธีการบวกแต่เพียงอย่างเดียว ตัวเลขที่เป็นค่าลบ เราใช้ complement แทน ผลลัพธ์จะได้ค่าเครื่องหมายติดมาด้วย
Complement คืออะไร
Complement ในระบบเลข binary มีอยู่ 2 แบบคือ 1's complement และ 2's complement
1's complement คือ การกลับสถานะของสัญญาณ กล่าวคือ สัญญาณ 1 เปลี่ยนเป็นสัญญาณ 0 และสัญญาณ 0 เปลี่ยนเป็นสัญญาณ 1
2's complement คือ ผลบวกของ1's complement กับเลข 1 ทั้งนี้เพื่อประโยชน์สำหรับทำการลบเลข และเป็นการแสดงค่าเลขที่เป็นค่าในระบบ computer
ตัวอย่างจงหาค่า 1's complement และ2's complement ของเลข binary 01101
วิธีทำ
1's complement ของ01101 = 10010
2's complement ของ 01101 = 10011

การลบเลข Binary โดยใช้1's complement


การลบเลข Binary โดยใช้ 1's complement มีวิธีการดังนี้
ก. หา 1's complementของตัวลบ ถ้าจำนวน bit ของตัวลบมีน้อยกว่าตัวตั้ง ก็ต้องทำจำนวน bit ของตัวลบให้เท่ากับจำนวน bit ของตัวตั้งเสียก่อน
ข. นำตัวตั้งมาบวกกับ 1's complement ของตัวลบที่ได้จากข้อ ก
ค. ผลบวกของข้อ ข. ถ้ามี end around carrry (ตัวทดตัวสุดท้าย) ก็ให้นำไปบวกกับ bit ที่มีนัยความสำคัญต่ำสุด ผลบวกที่ได้ก็คือผลลัพธ์ตามต้องการและมีค่าเป็นบวก

การลบเลข Binary โดยใช้ 2's complement


การลบเลข Binary โดยใช้ 2's complement มีวิธีการดังนี้
ก. หา 2's complementของตัวลบ ถ้าจำนวน bit ของตัวลบมีน้อยกว่าตัวตั้ง ก็ต้องทำจำนวน bit ของตัวลบให้เท่ากับจำนวน bit ของตัวตั้งเสียก่อน
ข. นำตัวตั้งมาบวกกับ 2's complement ของตัวลบที่ได้จากข้อ ก
ค. ผลบวกของข้อ ข. ถ้ามี end around carrry (ตัวทดตัวสุดท้าย) ก็ให้ตัดทิ้ง ที่เหลือก็คือผลลัพธ์ตามต้องการและมีค่าเป็นบวก