 Full subtractor (FS):

This has 3 inputs- 2 are the numbers to be subtracted and c is the borrow which is taken for previous bit and we have 2 outputs Difference and the Borrow. The following table shows the results for all combinations of inputs:

a              b            c             B(borrow)          D(difference)= D = a – b – c

0              0             0              0                              0

0              1             0              1                              1

1              0              0              0                              1

1              1              0              0                              0

0              0              1              1                              1

0              1              1              1                             0

1              0              1              0                             0

1              1              1              1                              1

So we can get the equations for the D and B from the K-maps as shown on next page.

K-map for the output variable Difference is as follow: We need 3 gate delays (3Δ) to get the output.

K-map for the variable Borrow is as follow:

Note that we have taken opposite values of variable a in the K-map. We can get the output in 2 gate delays as we assume that a, b the input numbers are stored in flipflops hence we can have the complimented a from the flipflop directly. So we don’t consider the delay of the inverter shown in the circuit.

Similar to the adder we have D = ab’c’ + a’b’c + a’bc’ + abc = a xor b xor c

And B= a’b + a’c + bc

And we have the following circuit diagram for full subtractor: 