Algebra di Boole. Introdotta nel 1874 da George Boole per fornire una rappresentazione algebrica della logica

Documenti analoghi
Per affrontare in modo sistematico lo studio dei sistemi di calcolo, abbiamo bisogno di un formalismo matematico definito su grandezze binarie

Il livello logico digitale

Richiami di Algebra di Commutazione

Algebra di commutazione

Algebra di commutazione

Algebra di commutazione

Algebra di Commutazione

PORTE LOGICHE. Si effettua su due o più variabili, l uscita assume lo stato logico 1 se almeno una variabile di ingresso è allo stato logico 1.

Algebra di commutazione

Calcolatori Elettronici Lezione 2 Algebra delle reti Logiche

ALGEBRA DI BOOLE. In caso di errori di battitura o se si volesse contribuire a migliorare la seguente guida contattare:

Fondamenti di Informatica B

I circuiti digitali: dalle funzioni logiche ai circuiti

Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica Operazioni logiche

Fondamenti di Informatica

Algebra di commutazione

Fondamenti di Informatica

Proposizioni logiche e algebra di Boole

Architettura degli Elaboratori e Laboratorio. Matteo Manzali Università degli Studi di Ferrara Anno Accademico

17/10/16. Espressioni Booleane

Algebra di Boole Cenni all Algebra di Boole. Algebra Booleana: definizione

Y = A + B e si legge A or B.

Algebra di Boole Cenni all Algebra di Boole

Il livello logico digitale

Circuiti digitali combinatori

Reti logiche: introduzione

Algebra di Boole Cenni all Algebra di Boole

Algebra di Boole. Cenni all Algebra di Boole

Corso di Calcolatori Elettronici I

Fondamenti di Informatica B

CODIFICA DELLE INFORMAZIONI MODULO 5

Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA

Logica booleana. Bogdan Maris ( )

Algebra di Boole. L'algebra della logica ( )

Corso di studi in Ingegneria Elettronica A.A. 2006/2007. Calcolatori Elettronici. Esercitazione n 2

Algebra di Boole. Da Boole a Shannon

Corso di Calcolatori Elettronici I A.A Algebra di Boole Lezione 4

Informazione binaria: - rappresentazione di valori logici -

Algebra di Boole. Modulo 2. Università di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica Laboratorio di Elettronica (EOLAB)

Fondamenti di Informatica. Algebra di Boole

1 Minimizzazione di espressioni logiche con le proprietà dell algebra

I circuiti digitali: dalle funzioni logiche ai circuiti (le SOP)

Le variabili logiche possono essere combinate per mezzo di operatori detti connettivi logici. I principali sono:

I circuiti digitali: dalle funzioni logiche ai circuiti

Algebra Booleana. 13. Rif:

Matematica per le scienze sociali Elementi di base. Francesco Lagona

Elementi di informatica

La somma di numeri binari. Logica a due livelli. Logica a due livelli

Algebra di Boole. Tavole di verità. Fondamenti di Informatica Algebra di Boole. Si basa su tre operazioni logiche: AND (*) OR (+) NOT (!

Elementi di Informatica A. A. 2016/2017

Algebra di Boole. Andrea Passerini Informatica. Algebra di Boole

Calcolo numerico e programmazione Elementi di logica

Esercizi di sintesi - Soluzioni

Circuiti e reti combinatorie. Appendice A (libro italiano) + dispense

Esercitazioni di Reti Logiche. Algebra Booleana e Porte Logiche

Calcolatori Elettronici Reti Logiche

Circuiti digitali. Operazioni Logiche: Algebra di Boole. Esempio di circuito. Porte Logiche. Fondamenti di Informatica A Ingegneria Gestionale

I circuiti digitali: dalle funzioni logiche ai circuiti (le SOP)

Sistemi Combinatori & Mappe di Karnaugh

Fondamenti dell Informatica Algebra di Boole. Prof.ssa Enrica Gentile

Operatori logici e algebra di boole

associate ai corrispondenti valori assunti dall uscita.

Algebra di Boole e reti logiche. 6 ottobre 2017

Che fine fanno i nostri programmi? Costrutti e strutture dati HLL. Istruzioni per la CPU e dati in memoria. Come vengono eseguite le istruzioni?

Architettura degli elaboratori Ricapitolando (ciascuna freccia rappresenta un procedimento, che vedremo)

Algebra di commutazione. Reti combinatorie

FONDAMENTI DI INFORMATICA Lezione n. 2

Calcolatori Elettronici

Algebra di Boole X Y Z V. Algebra di Boole

CIRCUITI DIGITALI. La grandezza fisica utilizzata nella maggior parte dei circuiti digitali è la differenza di potenziale (tensione).

CODIFICA DELLE INFORMAZIONI MODULO 5

Fondamenti di Informatica B. Fondamenti di Informatica B. Fondamenti di Informatica B. Fondamenti di Informatica B.

I circuiti digitali: dalle funzioni logiche ai circuiti

Precedenza degli operatori

13/10/16. FB ed EB associate. Forme canoniche e forme normali. Assumiamo di avere n variabili {x 1,,x n }:

La seconda forma canonica Circuiti notevoli. Sommario

A CHI E' RIVOLTA? CHI PUO' ESSERE DEFINITO PROPOSIZIONE LOGICA?

Reti Logiche Combinatorie

Codifica binaria: - valori logici e algebra di Boole -

Parte IV Indice. Algebra booleana. Esercizi

I.3 Porte Logiche. Elisabetta Ronchieri. Ottobre 13, Università di Ferrara Dipartimento di Economia e Management. Insegnamento di Informatica

Università degli Studi di Cassino e del Lazio Meridionale

Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE

Introduzione ed elementi dell'algebra di Boole

Lezione 3. Architetture dei calcolatori e delle reti. Algebra di Boole circuiti logici. Sommario. ! Algebra di Boole

Funzioni, espressioni e schemi logici

FONDAMENTI DI INFORMATICA Lezione n. 3

Esercizio 2: controllare l identità delle seguenti due funzioni di 4 variabili :

Algebra di Boole e circuiti dalle funzioni logiche ai circuiti digitali

Algebra di Boole Algebra di Boole

Tutorato architettura degli elaboratori modulo I (lezione 3)

Algebra di Boole e circuiti dalle funzioni logiche ai circuiti digitali

Il problema della sintesi

Algebra di Boole ed elementi di logica

Dispensa su. Funzioni Booleane. Jianyi Lin Università degli Studi di Milano

Transcript:

Algebra di Boole

Algebra di Boole Per poter affrontare in modo sistematico lo studio dei sistemi di calcolo, abbiamo inizialmente bisogno di un apparato teorico-formale mediante il quale lavorare sulle grandezze binarie Lo strumento formale si chiama Algebra di Boole Introdotta nel 874 da George Boole per fornire una rappresentazione algebrica della logica per questo motivo i circuiti elettronici che lavoro su valori binari assumono il nome di circuti logici o porte logiche Applicata nel 936 da Claude Shannon allo studio delle reti di commutazione telefonica

Postulati Algebra di Boole Un insieme I e due operatori binari +, formano un algebra di Boole se soddisfano i seguenti assiomi (x,y,z sono elementi di I): x,y I x+y I; x y I (chiusura delle operazioni) I x I, x+=x (elemento neutro per +) I x I, x =x (elemento neutro per ) x,y I x+y=y+x; x y = y x (proprietà commutativa) x,y,z I x+(y+z)=(y+x)+z; x (y z) = (y x) z) (proprietà associativa) x,y,z I x (y +z) = (x y) + (x z); x+(y z)=(x+y) (x+z) (proprietà distributiva) x I x I x + x = ; x x= (esistenza dell inverso)

Proprietà di un algebra booleana Gli elementi, sono unici Per ogni x I, l elemento x è unico x+x =x, xx= x x+xy = x, x(x+y)=x x+( x)y = x+y, x(( x)+y)=xy (x+y) = ( x)( y) (xy) = ( x)+( y) ( x) = x idempotenza assorbimento De Morgan involuzione

Algebra di commutazione Applicazione dell algebra di Boole ad un insieme con due soli valori Con B={,} sono completamente definiti i tre operatori di somma logica (+), OR prodotto logico ( ), AND negazione (-), NOT Applicata da C. Shannon nel 936 per lo studio e la progettazione di sistemi a relè Detta anche algebra logica, da cui reti o circuiti logici

Alcuni teoremi fondamentali Teorema di De Morgan (x+y)= x y (x y)= x + y Teorema dell involuzione x=x Legge di dualità (metateorema): Ogni identità e ogni proprietà booleana resta valida se si scambianotra di loro gli operatori AND ed OR e gli elementi ed

Porte logiche: modello Una porta logica è un blocco elementare in cui la relazione fra variabili di ingresso e variabili di uscita è descritta da una funzione logica. Sono circuti digitali di base nei quali viene individuata una uscita (Y) ed uno o più ingressi (x,..,xn) L uscita dipende dal valore degli ingressi Utilizzando un numero limitato di tipi di porte logiche è possibile realizzare un circuito logico combinatorio che realizza una qualsiasi funzione logica. x y

Porta NOT X Y x y Proprietà: X=X

Porta AND x x 2 y x x 2 y Proprietà: ABC=(AB)C=A(BC) AB=BA AA=A A=A A= AA=

Porta OR x y x 2 x x 2 y Proprietà: A+B+C=(A+B)+C=A+(B+C) A+B=B+A A+A=A A+= A+=A A+A=

Variabili di commutazione Grandezze che possono assumere i valori oppure Proprietà degli operatori (siano x,y,z variabili di commutazione) x + y = y + x x y = y x x + (y + z)=(x + y) + z = x + y + z x (y z) = (x y) z = x y z x (y + z)=(x y) + (x z) x + (y z)=(x + y)(x + z) (commutatività) (associatività) (distributività)

Funzione booleana Una funzione booleana f(x,x 2,,x n ) di n variabili è una qualsiasi funzione avente dominio {,} n e codominio {,}. Osserviamo che ad un espressione booleana di n variabili in un algebra commutativa corrisponde un unica funzione in n variabili; viceversa ad una funzione di n variabili corrispondono infinite espressione di n variabili.

Funzioni di commutazione Sia x i una variabile di commutazione ed X il vettore composto da n variabili x i {,}, X {,} n Consideriamo le funzioni y = f(x) f: {,} n {,} f è una funzione il cui dominio è costituito da tutte e sole le n-ple (x,x 2,,x n ) ed il cui codominio è l insieme {,} Il numero di n-plue diverse è 2 n f può essere assegnata mediante la sua tabella di verità (il termine verità deriva dai valori TRUE/FALSE)

Tabelle di verità Una funzione di commutazione può essere rappresentata utilizzando una tabella di verità. n variabili valori funzione x x 2 y 2 n configurazioni...

Funzioni unarie x y y y 2 y 3 y : funzione y : negazione (NOT) y 2 : funzione identità y 3 : funzione

Funzioni binarie (due variabili) x x y y y 2 y 3 y 4 y 5 y 6 y 7 y 8 y 9 y y Y 2 y 3 y 4 y 5 NOT x NOT x AND OR Tutte le funzioni possono essere ricavate a partire dagli operatori {NOT,AND} oppure {NOT,OR} Esistono operatori universali, cioè un opeartori che da soli Possono generare qualunque funzione?

Teorema di Shannon f(x,..,x n ) = x i f(x,.., x i-,, x i+...,x n ) + x i f(x,.., x i-,, x i+...,x n ) i n Suddivisione di una funzione complessa in funzioni più semplici o per ottenere un'espressione canonica da una tabella della verità o da un'espressione non canonica. Dimostrazione (per induzione perfetta): Se x i = allora il primo termine vale. Poiché =, si ha f(x,..,x n ) = f(x,.., x i-,, x i+...,x n ), che è identicamente vera perché, per ipotesi, x i =. Se x i = allora il secondo termine vale. Poiché =, si ha f(x,..,x n ) = f(x,.., x i-,, x i+...,x n ), che è identicamente vera perché, per ipotesi, x i =.

Forma canonica Somma di Prodotti (SP) Applichiamo il teorema più volte f(x,..,x n ) = x f(, x 2,..,x n ) + x f(,x 2,...,x n ) = x (x 2 f(,, x 3..,x n ) + x 2 f(,, x 3..,x n )) + x f(,x 2,...,x n )= x x 2 f(,, x 3..,x n )+ x x 2 f(,, x 3..,x n ) + x f(,x 2,...,x n )=.. x x 2 x n f(,,,) + x x 2 x n f(,,,,)+ x x 2 x n f(,,,) + + x x 2 x 3 x n f(,,,,)

Forma SP 2 n termini Termine generico della somma: x x 2 2. x n n f(, 2,, n ) Dove i, e x = x e x = x x x 2 2. x n n si chiama mintermine ed è il prodotto di n variabili dirette o negate

Forma SP 2 n- f(x,.., x n )= m k f(k) => f(x,.., x n )= m k k= k f(k)= dove: n m k = x i= i i (x = x, x =x) mintermine f(k) il valore f(,.., n ), con,.., n 2 n- tali che i 2 i- =k k=

Esempio y=f(x,x 2,x 3 ) è se e solo se il numero di variabili con valore è pari 2 3 4 5 6 7 x 3 x 2 x y m m 3 m 5 m 6 y =m +m 3 +m 5 +m 6 = (,3,5,6) f(x,x 2,x 3 ) = x 3 x 2 x + x 3 x 2 x + x 3 x 2 x + x 3 x 2 x

Forma canonica prodotto di somme (PS) Sia f(x,.., x n ) = m k k f(k)= g(x,.., x n ) = m k g= not f. k f(k)= Infatti, g vale quando f vale (poiché mancano i mintermini) e viceversa

Forma canonica prodotto di somme f(x,.., x n ) = m k k f(k)= f(x,.., x n ) = m k => f(x,.., x n ) = k k f(k)= k f(k)= M k = n x i= i - i Maxtermine

Esempio y=f(x,x 2,x 3 ) è se e solo se il numero di variabili con valore è pari 2 3 4 5 6 7 x 3 x 2 x y M M 2 M 4 M 7 y =M M 2 M 4 M 7 = (,2,4,7) f(x,x 2,x 3 ) =(x 3 +x 2 + x ) (x 3 +x 2 +x ) ( x 3 +x 2 +x ) ) ( x 3 +x 2 +x )

Esempio, n=3 variabili A B C minterm maxterm m = m = m 2 = m 3 = m 4 = m 5 = m 6 = m 7 = A B A B C A A B C AB B C A BC AB C C A B C C M = A + B + C M = A + B + C M 2 = A + B + C M 3 = A + B + C M 4 = A + B + C M 5 = A + B + C M 6 = A + B + C M 7 = A + B + C

Porta NAND x / y xy x y X X Y Proprietà: A/B = B/A A/= A A/= A/ A= Non è associativo x x 2 y

Operatore NAND (NOT-AND) Operatore universale ( x / y ) /( x / y ) xy xy ( x / x ) /( y / y ) x / y x y Prodotto logico Somma logica x/x = x x/x = Negazione Generazione della costante / = Generazione della costante

Porta NOR x y x + y x y X X Y Proprietà: A B = B A A = A = A A A = Non è associativo Operatore universale x x 2 y

Operatore NOR (NOT-OR) Operatore universale ( x y ) ( x y ) x + y ( x x ) ( y y ) x y Somma logica Prodotto logico x x = x x x = = Negazione Generazione della costante Generazione della costante

Operatore XOR or esclusivo, detto anche "somma modulo 2" o "anticoincidenza", indicato col simbolo x y xy xy (x y)(x y) x y=y x (proprietà commutativa) (x y) z=x (y z) (associativa) x = x x =x x x= x x = X Non è un operatore universale X X X 2 Y Y

Funzione di disparità L operatore applicato a n variabili definisce la funzione di disparità o somma modulo 2: P=x x 2... x n La funzione P è chiamata di disparità perché vale se e solo se un numero dispari di variabili vale. Val la pena di notare che il bit di parità che si aggiunge nei codici a rivelazione di errore è ottenuto proprio con la funzione di disparità P; infatti aggiungendo al vettore X il bit P corrispondente alla funzione di disparità si ottiene una stringa di bit che avrà sempre un numero pari di.

Porte Logiche: tassonomia Operatore Simbolo Proprietà NOT y= se e solo se x= y= x AND y=x x 2 y= se e solo se x =x 2 = OR y=x +x 2 y= se e solo se x =x 2 = NAND y=x /x 2 y= se e solo se x =x 2 = NOR y= x x 2 y= se e solo se x =x 2 = XOR y = x x 2 y= se e solo se x x 2 XNOR y= x x 2 y= se e solo se x =x 2