Answer: At full adder, we add three bits and we get two output sum and carry. We generally categorized binary full adder in two ways:
a. Where we got carry b. Where we did not get carry
Example:
Inputs | Sum (s) | Carry (c) |
1+0 | 1 | 0 |
0+0 | 0 | 0 |
0+1 | 1 | 0 |
1+1 | 0 | 1 |
Inputs | Sum (s) | Carry (c) |
0+1+1 | 0 | 1 |
1+0+1 | 0 | 1 |
0+0+1 | 1 | 0 |
1+1+1 | 1 | 1 |
So, we design two states 1. Where we get carry and 2. Where do not get carry
This carry state c means we got the carry, then again at carry state we process four combinations (00, 01, 10, 11)
We start the initial state as NC if we take initial carry = 0 [NC means NO Carry State]
On the other hand, we start the initial state as c if we take initial carry = 1