English: Three-bit full adder (add with carry) using five Fredkin gates. The "g" garbage output bit is (p NOR q) if r=0, and (p NAND q) if r=1.
Inputs on the left, including two constants, go through three gates to quickly determine the parity. The 0 and 1 bits swap places for each input bit that is set resulting in parity bit on the 4th row and inverse of parity on 5th row.
Then the carry row and the inverse parity row swap if the parity bit is set and swap again if one of the p or q input bits are set (it doesn't matter which is used) and the resulting carry output appears on the 3rd row.
The p and q inputs are only used as gate controls so they appear unchanged in the output.
Delen – het werk kopiëren, verspreiden en doorgeven
Remixen – afgeleide werken maken
Onder de volgende voorwaarden:
naamsvermelding – U moet op een gepaste manier aan naamsvermelding doen, een link naar de licentie geven, en aangeven of er wijzigingen in het werk zijn aangebracht. U mag dit op elke redelijke manier doen, maar niet zodanig dat de indruk wordt gewekt dat de licentiegever instemt met uw werk of uw gebruik van zijn werk.
Gelijk delen – Als u het werk heeft geremixt, veranderd, of erop heeft voortgebouwd, moet u het gewijzigde materiaal verspreiden onder dezelfde licentie als het oorspronkelijke werk, of een daarmee compatibele licentie.