L'algebra di Boole e le sue applicazioni Pirini Ilario 3^ EA Istituto tecnico I.I.S. Maserati Progetto STARtrekking L'algebra di Boole e le sue applicazioni
Indice: L’algebra di Boole Applicazione dell’algebra di Boole Esercizi e test Approfondimenti e curiosità
Chi era George Boole? Boole George nasce il 2 novembre 1815 a Lincolnshire in Gran Bretagna. Sviluppò assieme ad Auguste De Morgan la logica matematica moderna e il metodo simbolico. Boole e De Morgan fondarono l'algebra della logica o algebra booleana. www.dizionarioinformatico.com
L’ algebra Booleana Contempla due costanti 0 e 1 (falso e vero) Corrispondono a due stati che si escludono a vicenda Possono descrivere lo stato di apertura o chiusura di un generico contatto o di un circuito a più contatti Si definiscono delle operazioni fra i valori booleani: AND, OR, NOT sono gli operatori fondamentali 1 www.dizionarioinformatico.com
L’operazione di AND Si definisce l’operazione di prodotto logico (AND): il valore del prodotto logico è il simbolo 1 se il valore di tutti gli operandi è il simbolo 1 00 = 0 01 = 0 10 = 0 11 = 1 1 00 01 1 1 1 10 11 www.wikipedia.org
L’operazione di OR Si definisce l’operazione di somma logica (OR): il valore della somma logica è il simbolo 1 se il valore di almeno uno degli addendi è il simbolo 1 0+0 = 0 0+1 = 1 1+0 = 1 1+1 = 1 1 0+0 0+1 1 1 1 1+0 1+1 www.wikipedia.org
La negazione NOT Si definisce l’operatore di negazione (NOT): l’operatore inverte il valore della costante su cui opera Dalla definizione… 0 = 1 1 = 0 0 = 0 1 = 1 www.wikipedia.org
La tabella di verità Dalle otto combinazioni si ottiene la tabella di verità della funzione logica Si può scrivere la funzione Y come somma logica di prodotti logici A B C Y 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 Y = ABC + ABC + ABC + ABC
Funzioni logiche Una variabile y è una funzione delle n variabili indipendenti x1, x2,…, xn, se esiste un criterio che fa corrispondere in modo univoco ad ognuna delle 2n configurazioni delle xi un valore di y Una rappresentazione esplicita di una funzione è la tabella di verità, in cui si elencano tutte le possibili combinazioni di x1, x2, …, xn, con associato il valore di y y = F(x1,x2,…,xn) x1 x2 y 0 0 0 0 1 1 1 0 1 1 1 1 y = x1+x2
La forma canonica Date tre variabili booleane (A,B,C), si scriva la funzione Y che vale 1 quando solo due di esse hanno valore 1 A B C Y 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 Si può scrivere la funzione come somma logica delle configurazioni corrispondenti agli 1 Y = ABC + ABC + ABC Forma canonica: somma di prodotti (OR di AND) tutte le funzioni logiche si possono scrivere in questa forma
Variabili binarie Una variabile binaria indipendente può assumere uno dei due valori 0 e 1 Date n variabili binarie indipendenti, la loro somma logica (OR) è x 1 x1+ x2+ …+ xn = 1 se almeno una xi vale 1 0 se x1= x2= …= xn = 0 www.wikipedia.org
AND e NOT con variabili binarie Date n variabili binarie indipendenti, il loro prodotto logico (AND) è La negazione di una variabile x è x1 x2 … xn = 0 se almeno una xi vale 0 1 se x1= x2= …= xn = 1 x = 0 se x = 1 x = 1 se x = 0 www.wikipedia.org
Configurazioni delle variabili Date n variabili binarie indipendenti x1, x2,…, xn, queste possono assumere 2n configurazioni distinte Una configurazione specifica è individuata univocamente da un AND (a valore 1) di tutte le variabili, dove quelle corrispondenti ai valori 0 compaiono negate Ad esempio per n=3 si hanno 8 configurazioni 000 001 010 011 100 101 110 111 x1x2x3 x1x2x3 010 www.wikipedia.org
Minterm Se in una configurazione una variabile compare con 1 si assume il valore diretto se invece compare con uno 0 si assume il valore negato. Prendendo una funzione in esempio scriveremo: y = x1x2x3 + x1x2x3 + x1x2x3 Ciascuno di questi prodotti si chiama MINTERM www.wikipedia.org
Minterm La funzione conoscendo la sua tabella di verità, potrà essere espressa sotto forma di somme di prodotti dei termini minimi. Se una funzione è direttamente espressa sotto forma di somme di minterm sarà possibile costruire la sua tabella di verità, mettendo 1 nelle configurazioni relative ai minterm, e 0 negli altri casi. www.wikipedia.org
y = (x1+x2+x3)· (x1+x2+x°3)· (x1+x°2+x°3)· (x°1+x°2+x3)· (x°1+x°2+x°3) Maxterm Dalla tabella di verità si può affermare ogni maxterm è la somma di tutte le variabili dirette o negate a seconda che la configurazione contenga 1 o 0. y = (x1+x2+x3)· (x1+x2+x°3)· (x1+x°2+x°3)· (x°1+x°2+x3)· (x°1+x°2+x°3) ossia sotto forma di prodotto di somme. Ciascuna delle somme chiama maxterm (termine massimo).
Applicazione dell’algebra di Boole ai circuiti digitali In questa presentazione l'algebra di Boole verrà utilizzata in un diagramma di flusso per rendere più intuitivo comprendere il funzionamento di quei semplici circuiti digitali che costituiscono la base dei computer. "esco se è bel tempo ed è caldo.“ "esco se è bel tempo o se è caldo". www.nemesi.net
Applicazione dell’algebra di Boole ai circuiti digitali Tenendo presente la seguente tabella possiamo verificare le due frasi Quindi avremo: "esco se è bel tempo ed è caldo”= AND "esco se è bel tempo o se è caldo“ = OR www.nemesi.net
Applicazione dell’algebra di Boole ai circuiti digitali Nel Primo caso la lampadina si accenderà quando: Nel secondo invece la lampadina si accenderà quando: A A Y Y B B A=0 B=0 www.nemesi.net A=0 B=1
Un esercizio Progettare un circuito per accendere e spegnere una lampada da uno qualsiasi di tre interruttori indipendenti A B C 1 Cambia lo stato di un interruttore qualsiasi Y = 0 Y = 1
Un circuito con due interruttori I due interruttori corrispondono a due variabili (A,B) a valori booleani le variabili assumono i due valori 0 e 1 che corrispondono alle due posizioni dell’interruttore Y Y A B A B A 1 1 1 1 B A B A=0 B=0 A=0 B=1 Y Y A B A B 1 1 A B A 1 1 B Y = AB+AB A=1 B=0 A=1 B=1
Altre proprietà Per gli operatori AND e OR valgono le seguenti proprietà: Per l’operatore NOT si provano le seguenti identità: commutativa x1+x2 = x2+x1 x1 x2 = x2 x1 associativa x1+x2+x3 = x1+(x2+x3) x1 x2 x3 = x1(x2 x3) distributiva del prodotto rispetto alla somma x1 x2 + x1 x3 = x1(x2+x3) x + x = 1 x x = 0 x = x
Mappe di KARNAUGH Le mappe di Karnaugh sono delle tabelle che permettono in modo immediato la rappresentazione e la semplificazione di funzioni booleane fino 6 variabili. xy 00 01 11 10 z 1 Rappresentazione con Mappa di K. di una funzione. Le Mappe di K. costituiscono un altro metodo per rappresentare una funzione booleana;
Analisi delle combinazioni Si considera cosa accade a partire dalla configurazione di partenza, cambiando lo stato di un interruttore per volta Y = 1 Y = 0 A B C A B C 1 1 1 Y = 1 Y = 0 A B C 1 Y = 1 Y = 0 A B C A B C A B C 1 1 1 1 1 Y = 1 Y = 0 A B C A B C 1 1 1
Fine