Algebra booleana
Alessandro Di Nuovo
1
ALGEBRA BOOLEANA
n George Boole matematico inglese (XIX
secolo)
n Sua algebra utilizzata solo dall’inizio del XX
secolo (primi sistemi di calcolo)
n Si basa su variabili dette logiche o booleane
aventi due soli possibili valori:
è VERO (sinonimi: true, T, 1, acceso, ON, etc...)
è FALSO (sinonimi: false, F, 0, spento, OFF
etc...)
Alessandro Di Nuovo
2
Funzioni booleane
n Usando le variabili booleane, si possono costruire
le funzioni booleane (o funzioni logiche).
n Es. una funzione booleana di tre variabili:
F(x,y,z)
Il codominio e' costituito da due soli possibili stati:
è true - vero - 1
è false - falso - 0
Alessandro Di Nuovo
3
Tabella della verità
n Ogni funzione booleana è caratterizzata
dalla propria tabella di verità
Alessandro Di Nuovo
x
y
z
F
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
0
0
4
Funzioni booleane
n Funzioni completamente specificate:
se per tutte le combinazioni delle variabili il
suo valore è determinato
n Funzioni non completamente specificate:
se a una o più combinazioni delle sue
variabili non corrisponde alcun valore della
funzione
Alessandro Di Nuovo
5
Costanti booleane
n Oltre alle variabili vi sono anche le costanti
n Essendo l’Algebra Booleana definita su due
soli simboli, esistono solo due costanti:
è 0
è 1
Alessandro Di Nuovo
6
Operatori logici
n Tra le variabili e le costanti possono
intervenire delle relazioni
n Esistono due tipi di operatori, in dipendenza
dal numero di variabili che utilizzano:
è Monadici → una variabile
è Diadici → due variabili
Alessandro Di Nuovo
7
L’operatore NOT
n Il risultato è il complemento dell’unica
variabile
x
0
1
Alessandro Di Nuovo
NOT x
1
0
8
L’operatore AND
n Il risultato è vero se e solo se sono vere
entrambe le variabili
a
0
0
1
1
Alessandro Di Nuovo
b
0
1
0
1
a AND b
0
0
0
1
9
L’operatore OR
n Il risultato è vero se e solo se è vera
almeno una delle variabili
Alessandro Di Nuovo
a
b
0
0
1
1
0
1
0
1
a OR b
0
1
1
1
10
L’operatore XOR
n Il risultato è vero se e solo se è vera solo
una delle due variabili
Alessandro Di Nuovo
a
b
0
0
1
1
0
1
0
1
a XOR b
0
1
1
0
11
Operatori – nomenclatura
n NOT:
n AND:
n OR:
n XOR:
Alessandro Di Nuovo
inversione
prodotto logico
somma logica
or esclusivo
e simbologia
(¯)
(·)
(+)
( )
12
Operatori universali
n Con gli operatori NOT, OR, AND, XOR si
possono costruire tutte le funzioni booleane
n Esistono due operatori (NAND, NOR) che
permettono la sintesi di qualsiasi funzione,
utilizzando un unico tipo di operatori
Alessandro Di Nuovo
13
L’operatore NAND
n Il risultato è vero solo se è falso l’AND tra le
due variabili
Alessandro Di Nuovo
a
b
a NAND b
0
0
1
1
0
1
0
1
1
1
1
0
14
L’operatore NOR
n Il risultato è vero solo se è falso l’OR tra le
due variabili
Alessandro Di Nuovo
a
b
0
0
1
1
0
1
0
1
a NOR b
1
0
0
0
15
Precedenze tra operatori
n Le precedenze sono simili al + e al x
dell’algebra consueta:
è priorità alta x
è priorità bassa +
Alessandro Di Nuovo
16
Proprietà dell’algebra booleana
Alessandro Di Nuovo
17
Proprietà dell’algebra booleana
Associativa
X·(Y·Z) = (X·Y) ·Z = X·Y·Z
X+(Y+Z) = (X+Y)+Z = X+Y+Z
(X)=X
X·Y = X + Y
Alessandro Di Nuovo
X+Y = X ·Y
De Morgan
18