Half Adder

  • Built with 1 XOR for the current bit & 1 AND for the carry bit
  • Takes in 2 Bit

Full Adder

  • Takes in 3 Bit
  • Built with 2 Half Adder
  • The sum of the 1st Half Adder is added with the cin by the 2nd Half Adder
  • The sum output of the 2nd Half Adder is the final sum & the cout is the final cout
  • For the cout, we need to have an OR to pipe out the final cout to handle situation where the first Half Adder’s cout is 1 while the cin is 0 & sum of the first Half Adder is 0