Full adder | |||||||||||||
In order to perform true addition, we need to use the carry from the previous result | |||||||||||||
Full adder | |||||||||||||
Data inputs: x, y, cin (carry in) | |||||||||||||
Data outputs: s, cout (carry out) | |||||||||||||
Truth table | Boolean expressions | ||||||||||||
x | y | cin | s | cout | |||||||||
0 | 0 | 0 | 0 | 0 | s = \x\ycin + \xy\cin | ||||||||
0 | 0 | 1 | 1 | 0 | + x\y\cin + xycin | ||||||||
0 | 1 | 0 | 1 | 0 | |||||||||
0 | 1 | 1 | 0 | 1 | |||||||||
1 | 0 | 0 | 1 | 0 | |||||||||
1 | 0 | 1 | 0 | 1 | |||||||||
1 | 1 | 0 | 0 | 1 | |||||||||
1 | 1 | 1 | 1 | 1 | |||||||||