A half subtractor computes A minus B and produces a difference and borrow. A full subtractor also includes an incoming borrow. Borrow indicates that the current bit position needed one unit from the next higher position to complete its subtraction.

Worked example

For a half subtractor, A = 0 and B = 1 gives difference = 1 and borrow = 1: borrowing makes the local subtraction 2 − 1. For a full subtractor with A = 0, B = 1 and Bin = 1, the local total is −2, giving difference = 0 and borrow-out = 1.

What to watch for

Borrow and carry are different conventions. If subtraction is implemented with an adder, the final carry often means no borrow; check the chosen interface definition.

Try it yourself

What are the half-subtractor outputs for A = 1 and B = 0?

Answer: Difference = 1 and borrow = 0. No higher-position contribution is needed.

How to study this topic

State the operand width and signedness first. Work out a decimal answer, then compare it with the binary result. Keep result bits, carry, borrow and signed overflow distinct when interpreting the circuit's output.

Explore related programmes

These recorded programmes are upcoming. This article is general educational content, not a syllabus or course sample.

Digital Electronics