Cos'è full adder?

Full Adder

Un full adder è un circuito digitale che esegue l'addizione di tre bit binari: due bit di input (A e B) e un bit di carry-in (Cin). Produce due bit di output: la somma (Somma) e un bit di carry-out (Cout).

Funzionamento

Il full adder, in sostanza, aggiunge A, B e Cin per produrre Somma e Cout. La Somma rappresenta il bit meno significativo del risultato, mentre Cout rappresenta il bit più significativo (carry) che viene passato all'adder successivo in una operazione di addizione multi-bit.

Tabella di Verità

La tabella di verità del full adder definisce il suo comportamento per tutte le possibili combinazioni di input:

ABCinSommaCout
00000
00110
01010
01101
10010
10101
11001
11111

Equazioni Logiche

Le uscite Somma e Cout possono essere espresse tramite le seguenti equazioni logiche:

  • Somma = A ⊕ B ⊕ Cin (XOR di A, B e Cin)
  • Cout = (A ⋅ B) + (Cin ⋅ (A ⊕ B)) (AND di A e B, ORed con AND di Cin e l'XOR di A e B)

Implementazione

Un full adder può essere implementato usando diverse combinazioni di porte logiche. Una implementazione comune utilizza due half adder e una porta OR. Il primo half adder somma A e B, generando una somma parziale e un carry. Il secondo half adder somma la somma parziale con Cin, producendo la somma finale. Il carry finale (Cout) è ottenuto con la porta OR che combina i carry dei due half adder.

Applicazioni

I full adder sono componenti fondamentali in molti circuiti digitali, tra cui:

  • Addizionatori multi-bit: I full adder sono collegati in cascata per creare addizionatori che possono sommare numeri binari di qualsiasi lunghezza. Il Cout di un full adder è connesso al Cin dell'adder successivo.
  • Unità Aritmetiche Logiche (ALU): Le ALU utilizzano full adder per eseguire operazioni di addizione e sottrazione.
  • Contatori: I full adder possono essere utilizzati per implementare contatori binari.

Concetti Importanti

  • Half%20Adder: Un circuito che somma due bit.
  • XOR%20Gate: Una porta logica che produce un'uscita alta solo se gli ingressi sono diversi.
  • Carry: Il bit di riporto che viene generato quando la somma di due bit supera la capacità di un singolo bit.
  • ALU: Unità Aritmetica Logica.