Porte logiche di base e Algebra di Boole

Da Wikiversità, l'apprendimento libero.
Jump to navigation Jump to search
lezione
Porte logiche di base e Algebra di Boole
Tipo di risorsa Tipo: lezione
Materia di appartenenza Materia: Reti logiche

Porte logiche di base[modifica]

Le porte logiche di base sono 3: NOT AND OR.

Porta Logica: NOT
SimboloNOT.png
Espressione:
  • Z = X0
  • Z = ~ X0
  • Z = ¬X0
  • Z = ! X0
Tabella della verità:
X0 Z
0 1
1 0

Descrizione:
L'operatore/porta NOT restituisce il valore inverso di quello in entrata.

 
Porta Logica: AND
SimboloAND.png
Espressione:
  • Z = X0X1
  • Z = X0 AND X1
  • Z = X0* X1
  • Z = X0?X1
Tabella della verità:
X1 X0 Z
0 0 0
0 1 0
1 0 0
1 1 1

Descrizione:
L'operatore/porta AND (letteralmente e in inglese) restituisce 1 (vero) se e solo se tutti gli operandi hanno valore 1 (vero), altrimenti restituisce 0 (falso). Tale operazione è anche detta prodotto logico.

 
Porta Logica: OR
SimboloOR.png
Espressione:
  • Z = X0 + X1
  • Z = X0 OR X1
  • Z = X0 ? X1
Tabella della verità:
X1 X0 Z
0 0 0
0 1 1
1 0 1
1 1 1

Descrizione:
L'operatore/porta OR (letteralmente o in inglese) restituisce 1 (vero) se almeno uno degli operandi è 1 (vero); ovvero restituisce 0 (falso) se e solo se tutti gli operandi sono 0 (falso). Tale operazione è anche detta somma logica.

 

Altre Porte logiche[modifica]

Utilizzando le 3 porte logiche di base si può descrivere il comportamento di qualsiasi rete più o meno complessa. Nella pratica esistono altre porte logiche che vengono utilizzate in sostituizione alle più frequenti operazioni logiche.

Porta Logica: NAND
SimboloNAND.png
Espressione:
  • Z = X0X1
Tabella della verità:
X1 X0 Z
0 0 1
0 1 1
1 0 1
1 1 0

Descrizione:
L'operatore NAND (cioè la negazione del risultato dell'operazione AND) restituisce 0 (falso) se e solo se tutti gli elementi sono 1, mentre restituisce 1 (vero) in tutti gli altri casi.

 
Porta Logica: NOR
SimboloNOR.png
Espressione:
  • Z = X0+X1
Tabella della verità:
X1 X0 Z
0 0 1
0 1 0
1 0 0
1 1 0

Descrizione:
L'operatore NOR, (cioè la negazione del risultato dell'operazione OR) restituisce 1 (vero) se e solo se tutti gli elementi sono 0, mentre restituisce 0 (falso) in tutti gli altri casi.

 
Porta Logica: XOR
SimboloXOR.png
Espressione:
  • Z = X0 ⊕ X1
Tabella della verità:
X1 X0 Z
0 0 0
0 1 1
1 0 1
1 1 0

Descrizione:
L'operatore XOR (detto anche OR esclusivo o somma modulo 2) restituisce 1 (vero) se e solo se un unico dei due operandi è 1, mentre restituisce 0 (falso) in tutti gli altri casi. Osservando la tabella della verità dell'operatore XOR, si può riscrivere lo stesso XOR utilizzando le porte logiche di base:
Z = X0 ⊕ X1 = X0X1+X0X1

NB:esistono altri modi equivalenti per scrivere l'espressione
 
Porta Logica: XNOR
SimboloXNOR.png
Espressione:
  • Z = X0 ⊕ X1
Tabella della verità:
X1 X0 Z
0 0 1
0 1 0
1 0 0
1 1 1

Descrizione:
L'operatore XNOR (cioè la negazione del risultato dell'operazione XOR) restituisce 0 se e solo se un unico elemento dei due è uguale a 1 e tutti gli altri elementi sono 0 Osservando la tabella della verità dell'operatore XNOR, si può riscrivere lo XNOR stesso utilizzando le porte logiche di base:
Z = X0 ⊕ X1 = X0 X1+X0X1

NB:esistono altri modi equivalenti per scrivere l'espressione
 

Ancora sullo XOR[modifica]

Nella figura sottostante è sono riportate tre "reti logiche" equivalenti che implementano l'operatore xor. In particolare si noti che la seconda e la terza rete differiscono esclusivamente per la notazione grafica, infatti per comodità spesso si preferisce sostituire l'operatore NOT semplicemente con il pallino vuoto all'ingresso/uscita delle altre porte logiche (come avrete già notato nei simboli grafici nel NAND, NOR o XNOR).

XOR3.png

Algebra di Boole[modifica]

Operazioni con le Costanti[modifica]

a)

b)

c)

d)

Dimostrazioni:
X0 VERO FALSO Za Zb Zc Zd
0 1 0 0+1 = 1 0* 0 = 0 0+0 = 0 0* 1 = 0
1 1 0 1+1 = 1 1* 0 = 0 1+0 = 1 1* 1 = 1
X0 VERO FALSO VERO FALSO X0 X0
 

Proprietà base di AND e OR[modifica]

a)

b)

Dimostrazioni: Aiutandosi con la tabella della verità a fianco si ha:

  • Proprietà a):
X0 è condizione sufficiente ma non necessaria per X0+X1;
se X0 è vera sicuramente X0+X1 è vera (sufficiente), ma X0+X1 potrebbe essere vera anche se X0 è falsa (non necessaria)
X0 + X1 è condizione necessaria ma non sufficiente per X0;
Sapere che X0 + X1 è vera (oppure falsa) è necessario per sapere se X0 è vera (oppure falsa) ma non è sufficiente perché occorre conoscere anche X1
  • Proprietà b):
X0X1 è condizione sufficiente ma non necessaria per X0;
X0 è condizione necessaria ma non sufficiente per X0X1;
Tabella della verità:
X1 X0 X0 + X1 X0X1
0 0 0 0
0 1 1 0
1 0 1 0
1 1 1 1
 

c)

d)

dimostrazione:
X0 X0 X0 + X0 X0X0
0 0 0+0 = 0 0* 0 = 0
1 1 1+1 = 1 1* 1 = 1
 

Proprietà Commutativa:
e)

f)

dimostrazione:
X1 X0 X0 + X1 X1 + X0 X0* X1 X1X0
0 0 0+0 = 0 0+0 = 0 0* 0 = 0 0* 0 = 0
0 1 1+0 = 1 0+1 = 1 1* 0 = 0 0* 1 = 0
1 0 0+1 = 1 1+0 = 1 0* 1 = 0 1* 0 = 0
1 1 1+1 = 1 1+1 = 1 1* 1 = 1 1* 1 = 1
 

Proprietà Associativa:
g)

h)

Proprietà Distributiva:
i)

j)

dimostrazione:
X2 X1 X0 X0X1 X0X2 X1X2 X0+X1 X0+X2 X1+X2 (X0+X1)+X2 X0+(X1+X2) (X0X1)X2 X0(X1X2) X0(X1+X2) (X0X1)+(X0X2) X0+(X1X2) (X0+X1)(X0+X2)
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 0 0 0 1 1 0 1 1 0 0 0 0 1 1
0 1 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0
0 1 1 1 0 0 1 1 1 1 1 0 0 1 1 1 1
1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0
1 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1
1 1 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 

Leggi di De Morgan[modifica]

a)

b)

Approfondimento

dimostrazione:
X1 X0 X1 X0 X0X1 X0+X1 (X0X1) X0+X1 (X0 + X1) X0 X1
0 0 1 1 0 0 1 1 1 1
0 1 1 0 0 1 1 1 0 0
1 0 0 1 0 1 1 1 0 0
1 1 0 0 1 1 0 0 0 0
 

Proprietà base di NOT[modifica]

Doppia negazione

Implicazione ed Equivalenza[modifica]

a)

b)

c)

d)

e)

f)

g)

h)

i)

l)

Equivalenza:
m)