Logica Booleana e Circuiti

annuncio pubblicitario
Logica Booleana
Circuiti Logici
Logica Booleana
Circuiti Logici
Valori Proposizionali
Connettivi, Formule e Tavole di Verità
Mappe di Karnaugh
Logica Booleana
Logica Booleana e Circuiti
Variabili Proposizionali
– Sono degli oggetti che possono assumere uno e uno solo tra i
due valori di verità VERO (o True, o 1) e FALSO (o False, o 0).
Walter Cazzola
– Nel seguito le indicheremo usando le lettere minuscole dell'alfabeto latino, mentre useremo i simboli “1” e “0” per indicare
i valori di verità.
Dipartimento di Informatica e Comunicazione
Università degli Studi di Milano
Walter Cazzola
Logica Booleana e Circuiti
Logica Booleana
Circuiti Logici
Slide 1 of 12
Valori Proposizionali
Connettivi, Formule e Tavole di Verità
Mappe di Karnaugh
Logica Booleana e Circuiti
Logica Booleana
Circuiti Logici
Logica Booleana
Slide 2 of 12
Valori Proposizionali
Connettivi, Formule e Tavole di Verità
Mappe di Karnaugh
Logica Booleana
Connettivi e Formule
– I connettivi indicano operazioni logiche tra variabili proposizionali:
– congiunzione (e, and, ∧)
– disgiunzione (o, or, ∨)
– negazione (non, not, :)
– Utilizzando variabili e connettivi (e rispettando opportune regole di sintassi) è possibile costruire formule booleane.
Walter Cazzola
Walter Cazzola
Logica Booleana e Circuiti
Slide 3 of 12
Tavole di Verità
– Sintetizzano i valori assunti da una formula booleana al variare
dei possibili assegnamenti di valori di verità per le variabili
proposizionali che compaiono nella formula stessa.
– Hanno tante righe quanti sono i possibili assegnamenti (2 elevato al numero di variabili), mentre il numero di colonne dipende
dalla complessità della formula.
Walter Cazzola
Logica Booleana e Circuiti
Slide 4 of 12
Logica Booleana
Circuiti Logici
Valori Proposizionali
Connettivi, Formule e Tavole di Verità
Mappe di Karnaugh
Logica Booleana
Circuiti Logici
Logica Booleana
Valori Proposizionali
Connettivi, Formule e Tavole di Verità
Mappe di Karnaugh
Logica Booleana
Tavole di Verità
Implicazione
Congiunzione
a
0
0
1
1
b
0
1
0
1
Disgiunzione
a∧b
0
0
0
1
a
0
0
1
1
b
0
1
0
1
Negazione
a∨b
0
1
1
1
a
0
1
Chiamiamo implicazione tra a e b il
risultato della formula (:a ∨ b ).
:a
1
0
Per brevità la formula è associata
ad un connettivo rappresentato dal
simbolo →.
a
0
0
1
1
b
0
1
0
1
:a
1
1
0
0
:a∨b
1
1
0
1
a→b è vera a meno che a
sia vero e b sia falso.
Nota. True = 1, False = 0.
Walter Cazzola
Logica Booleana e Circuiti
Logica Booleana
Circuiti Logici
Slide 5 of 12
Logica Booleana
Circuiti Logici
a→b
1
1
0
1
b→a
1
0
1
1
Valori Proposizionali
Connettivi, Formule e Tavole di Verità
Mappe di Karnaugh
Un Esercizio. Tavola di Verità per (a∧b)∨:c.
f = ((a→ b)∧ a)→ b.
f
1
0
0
1
a
0
0
1
1
b
0
1
0
1
a→b
1
1
0
1
(a→b)∧a
0
0
0
1
f
1
1
1
1
Nota. f è una tautologia.
Walter Cazzola
Slide 6 of 12
Logica Booleana
f = (a→ b)∧ (b→ a).
b
0
1
0
1
Logica Booleana e Circuiti
Valori Proposizionali
Connettivi, Formule e Tavole di Verità
Mappe di Karnaugh
Logica Booleana
a
0
0
1
1
Walter Cazzola
Logica Booleana e Circuiti
Slide 7 of 12
a
0
0
0
0
1
1
1
1
Walter Cazzola
b
0
0
1
1
0
0
1
1
c
0
1
0
1
0
1
0
1
:c
1
0
1
0
1
0
1
0
a∧b
0
0
0
0
0
0
1
1
(a∧b)∨:c
1
0
1
0
1
0
1
1
Logica Booleana e Circuiti
Slide 8 of 12
Logica Booleana
Circuiti Logici
Valori Proposizionali
Connettivi, Formule e Tavole di Verità
Mappe di Karnaugh
Logica Booleana
Circuiti Logici
Circuiti Logici
Logica Booleana
Sono particolari rappresentazioni di formule booleane, tramite le
seguenti porte logiche:
Dalla Tavola di Verità alla Formula.
a
0
0
0
0
1
1
1
1
b
0
0
1
1
0
0
1
1
c
0
1
0
1
0
1
0
1
f
1
0
0
0
1
0
0
1
Algoritmo di Karnaugh
AND:
Per ogni riga i per cui f vale 1:
– per ogni variabile v la considero:
OR:
a
b
– fi è la congiunzione (∧) degli input:
f è la disgiunzione (∨) degli fi costruiti.
Logica Booleana e Circuiti
Logica Booleana
Circuiti Logici
c
Slide 9 of 12
(a∧b)∨:c
:
Logica Booleana e Circuiti
Logica Booleana
Circuiti Logici
Slide 10 of 12
Nozioni Generali
Circuiti Logici
Tavola di Verità per :(a∧b)∧(:b∨c).
a∧b
:(a∧b)
:(a∧b)∧(:b∨c)
:b
Walter Cazzola
Walter Cazzola
Nozioni Generali
Un altro esempio di circuito.
c
∧
∨
Circuiti Logici
a
b
NOT:
Esempio di circuito.
– negata se l'input è 0;
– non negata altrimenti;
Quale formula calcola f?
(:a∧:b∧:c) ∨ (a ∧:b∧:c) ∨ (a ∧b ∧c)
Walter Cazzola
Nozioni Generali
:b∨c
Logica Booleana e Circuiti
Slide 11 of 12
a
0
0
0
0
1
1
1
1
Walter Cazzola
b
0
0
1
1
0
0
1
1
c
0
1
0
1
0
1
0
1
a∧b
0
0
0
0
0
0
1
1
:(a∧b)
1
1
1
1
1
1
0
0
:b
1
1
0
0
1
1
0
0
:b∨c
1
1
0
1
1
1
0
1
Logica Booleana e Circuiti
:(a∧b)∧(:b∨c)
1
1
0
1
1
1
0
0
Slide 12 of 12
Scarica