ALGEBRA DI BOOLE Nel 1800 il matematico e filosofo inglese Boole, allo scopo di procurarsi un simbolismo che gli consentisse di trattare in termini analitici le proposizioni di un discorso, gettò le basi di una disciplina matematica che prese il nome di “Algebra Binaria”, più comunemente nota come “Algebra di Boole”. Quella che per Boole doveva essere l’idea di un calcolo astratto risultò essere una delle più grandi conquiste della tecnica moderna. L’algebra di Boole si basa sul sistema di numerazione binario, utilizzante due soli simboli “0” ed “1”. Nell’algebra di Boole i valori costanti sono rappresentati dai simboli “0” e “1”, mentre le grandezze variabili vengono indicate con le lettere maiuscole A, B, C, .. Si definisce “Tabella della verità” (t.d.v.) di una funzione logica una rappresentazione tabellare schematica che viene compilata definendo, per ogni configurazione binaria delle variabili di ingresso, il corrispondente valore logico delle uscite. Il numero delle righe (o configurazioni) di cui risulta costituita una Tabella della verità è uguale a 2n dove n = numero delle variabili di ingresso A, B, … Una tabella della verità viene compilata riportando, nella sua parte sinistra, tutte le possibili combinazioni delle variabili di ingresso A, B , … e nella sua parte destra tutti i valori logici Y dell’uscita che dipende dalla intrinseca conformazione del circuito. Riportiamo l’esempio di una tabella della verità relativa a ingresso A, B, C A B C Y 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 Prof. Nuccio Salvatore – Mascellino L. Pagina 1 3 variabili di 08/03/2009 OPERATORI LOGICI FONDAMENTALI Gli operatori dell’algebra di Boole sono operatori che seguono le regole della logica del pensiero anziché quelle della matematica. Gli operatori fondamentali sono: Operatore logico di negazione NOT Operatore di prodotto logico AND Operatore di somma logica OR Operatore di somma logica esclusiva EX-OR Per ciascuno di questi operatori verranno specificate le definizioni, la tabella della verità, le rappresentazioni simboliche analitiche e grafiche e le proprietà. Si definisce “Porta Logica” la materializzazione di un operatore logico, cioè la realizzazione pratica con circuiterie elettroniche, sia a componenti discreti che integrati, delle funzioni logiche definite dagli operatori. OPERATORE LOGICO NOT L’Operatore Logico NOT è un operatore contraddistinto dall’avere un solo ingresso. L’operatore logico NOT è l’operatore mediante il quale si determina l’inversione di una grandezza logica, cioè la condizione per cui tutte le volte che una variabile logica assume il valore logico “0” , l’inversione le fa assumere sistematicamente il valore logico “1” e viceversa. Una variabile che non è soggetta all’operatore NOT viene chiamata “variabile in forma naturale”. Prof. Nuccio Salvatore – Mascellino L. Pagina 2 08/03/2009 Una variabile che è soggetta all’operatore NOT viene chiamata “variabile in forma negata”. L’operatore NOT può anche essere chiamato “Operatore di Negazione”. Dalla precedente definizione si può direttamente compilare la seguente tabella della verità nella quale si è indicato con A la variabile logica di ingresso (essendo 2n = 21 = 2 il numero delle righe) A 0 1 NOT 1 0 Analiticamente, l’operatore logico NOT viene rappresentato mediante un semplice trattino posto sulla variabile logica soggetta alla negazione. La negazione di A è Ā Per la rappresentazione grafica dell’operatore logico NOT possono venire utilizzati numerosi e differenti simboli topologici (cioè mnemonici). E’ d’uso frequente il simbolo costituito da un triangolo con una piccola circonferenza all’estremità di un suo vertice. In tale rappresentazione, l’ingresso viene indicato con la lettera A e l’uscita con la lettera Ā. L’operatore logico NOT gode delle seguenti proprietà: 1. La negazione della costante logica “0” è la costante logica “1” cioè: _ 0 = 1 2. La negazione della costante logica “1” è la costante logica “0” cioè: _ 1= 0 3. Una variabile negata due volte riprende il suo valore naturale, cioè _ Ā = A Da cui si deduce il seguente “Teorema dell’Involuzione o della doppia negazione”: un numero pari di negazioni lascia inalterata la variabile un numero dispari di negazioni rende la variabile negata Prof. Nuccio Salvatore – Mascellino L. Pagina 3 08/03/2009 OPERATORE LOGICO AND L’Operatore Logico AND è un operatore contraddistinto dall’avere due o più variabili logiche di ingresso ed una sola uscita. L’operatore logico AND produce in uscita il valore logico “1” solo e solo quando tutte le variabili di ingresso assumono il valore logico “1”. In tutti gli altri casi in cui almeno un ingresso è al livello logico “0” anche l’uscita assume il valore logico “0”. Nelle reti di commutazione l’operatore AND viene realizzato mediante tanti interruttori in serie quante sono le variabili di ingresso. Dalla precedente definizione si può compilare la seguente tabella della verità nella quale si sono indicati con A e B le variabili di ingresso per un operatore AND a due ingressi: A 0 0 1 1 B 0 1 0 1 AND 0 0 0 1 In modo analogo si può compilare la seguente tabella della verità (t.d.v.) per un operatore AND a tre ingressi: A 0 0 0 0 1 1 1 1 Prof. Nuccio Salvatore – Mascellino L. B 0 0 1 1 0 0 1 1 Pagina 4 C 0 1 0 1 0 1 0 1 Y 0 0 0 0 0 0 0 1 08/03/2009 Per la rappresentazione analitica, nelle espressioni logiche viene utilizzato il puntino · che può anche essere tralasciato. Quindi, potremo scrivere: A·B·C oppure ABC L’espressione logicadi un operatore logico AND è quindi la seguente: y = ABC L’operatore logico AND può anche essere indicato come “prodotto logico”. L’operatore logico AND viene di solito rappresentato con il seguente simbolo topologico: L’operatore logico AND gode delle seguenti proprietà: 1) Proprietà commutativa: 2) Proprietà associativa: AB = BA A B C = A (B C) = B (A C ) = C (A B ) OPERATORE LOGICO OR L’operatore logico OR produce in uscita il valore logico “0” solo e solo quando tutte le variabili di ingresso assumono il valore logico “0”. In tutti gli altri casi in cui almeno un ingresso è al livello logico “1”, anche l’uscita assume il valore logico “1”. Nelle reti di commutazione, l’operatore logico OR viene realizzato mediante tanti interruttori in parallelo quante sono le variabili di ingresso. Dalla precedente definizione si può compilare la seguente tabella della verità nella quale si sono indicati con A e B le variabili di ingresso per un operatore OR a due ingressi: A 0 0 1 1 Prof. Nuccio Salvatore – Mascellino L. B 0 1 0 1 Pagina 5 OR 0 1 1 1 08/03/2009 In modo analogo si può compilare la seguente tabella della verità (t.d.v.) per un operatore OR a tre ingressi: 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 Y 0 1 1 1 1 1 1 1 Per la rappresentazione analitica, nelle espressioni logiche viene utilizzato il simbolo + Quindi, potremo scrivere: A+B+C L’espressione logicadi un operatore logico OR è quindi la seguente: y = A+B+C L’operatore logico OR può anche essere indicato come “somma logica”. L’operatore logico OR viene di solito rappresentato con il seguente simbolo topologico: L’operatore logico OR gode delle seguenti proprietà: 1) Proprietà commutativa: A+B = B+A 2) Proprietà associativa: A + B + C = A + (B + C) = B + (A + C ) = C + (A + B ) Prof. Nuccio Salvatore – Mascellino L. Pagina 6 08/03/2009 OPERATORE LOGICO ESCLUSIVO EX-OR L’Operatore Logico EX-OR è un operatore contraddistinto dall’avere due variabili logiche di ingresso ed una sola uscita. L’operatore EX-OR è un operatore che realizza una “somma esclusiva”. L’operatore logico EX-OR produce in uscita il valore logico “1” solo e solo quando l’uno o l’altro degli ingressi assume il valore logico “1”. Nei casi in cui i due ingressi assumono lo stesso valore logico (cioè, o entrambi “0” o entrambi “1”), l’uscita assume il valore logico “0”. L’operatore logico EX-OR può essere immaginato costituito da due interruttori, uno chiuso e uno aperto, interconnessi tra loro. Dalla precedente definizione si può compilare la seguente tabella della verità (t.d.v.) . A 0 0 1 1 B 0 1 0 1 EX-OR 0 1 1 0 Per la rappresentazione analitica, nelle espressioni logiche viene utilizzato il simbolo costituito da un cerchietto con il segno + all’interno. Quindi, potremo scrivere: AoB L’espressione logica di un operatore logico EX-OR è quindi la seguente: y = A o B L’operatore logico EX-OR può anche essere indicato come “somma logica esclusiva”. L’operatore logico EX-OR viene di solito rappresentato con il seguente simbolo topologico: Prof. Nuccio Salvatore – Mascellino L. Pagina 7 08/03/2009 L’operatore logico EX-OR gode della seguente proprietà: 1) Proprietà commutativa: AoB = BoA OSSERVAZIONI SULLA PORTA LOGICA AND E’ del tutto logico che una porta AND a tre ingressi può essere utilizzata al posto di una porta AND a due ingressi per realizzare un operatore AND applicato a due variabili A e B. E’ ovvio che in questo caso rimane un ingresso libero e si pone quindi il problema di come considerarlo da un punto di vista logico. Esistono due diverse possibili soluzioni: 1) Inviare all’ingresso libero il valore logico costante “1”. Infatti, in questo modo, il valore logico “1” non falsa il prodotto logico sia che esso venga realizzato con una variabile logica “0” sia che esso venga realizzato con un’altra variabile logica “1”. Nell’unità logica il valore costante “1” viene realizzato prelevandolo dal morsetto positivo +5 V dell’alimentazione. 2) Inviare, all’ingresso libero della porta, una delle due variabili presenti negli altri ingressi della stessa porta logica. Infatti, in questo modo, il collegamento dell’ingresso libero della porta con qualsiasi altro ingresso della stessa porta, non falsa il risultato. Nelle esercitazioni, nelle quali sarà necessario utilizzare una porta AND con un numero di ingressi superiore al numero delle variabili, si converrà, per gli ingressi rimasti liberi, di adottare questa seconda soluzione. Prof. Nuccio Salvatore – Mascellino L. Pagina 8 08/03/2009 OSSERVAZIONI SULLA PORTA LOGICA OR E’ del tutto logico che una porta OR a quattro ingressi può essere utilizzata al posto di una porta OR a due ingressi per realizzare un operatore OR applicato a due variabili A e B. E’ ovvio che in questo caso rimangono ingressi liberi e si pone quindi il problema di come considerarli da un punto di vista logico. Esistono due diverse possibili soluzioni: 1) Applicare agli ingressi liberi il valore logico costante “0” Infatti, in questo modo, il valore logico “0” assunto da una qualsiasi variabile permette che l’operatore OR stabilisca in uscita un valore logico che sia funzione delle rimanenti variabili. Nell’unità logica il valore costante “0” viene realizzato prelevandolo dal morsetto di massa dell’alimentazione. 2) Applicare agli ingressi liberi una delle variabili presenti agli altri ingressi, indifferentemente A o B. Nelle esercitazioni, nelle quali sarà necessario utilizzare una porta OR con un numero di ingressi superiore al numero delle variabili, si converrà, per gli ingressi rimasti liberi, di adottare questa seconda soluzione. Prof. Nuccio Salvatore – Mascellino L. Pagina 9 08/03/2009