Operazioni Logiche: lgebra di oole Fondamenti di Informatica Ingegneria Gestionale Università degli Studi di rescia Docente: Prof. lfonso Gerevini Circuiti digitali Il calcolatore può essere visto come un insieme di circuiti digitali Un circuito digitale è un sistema in cui l informazione viene rappresentata mediante una grandezza fisica della quale si considerano soltanto valori discreti lla grandezza fisica vengono fatti corrispondere solamente due valori logici corrispondenti a due livelli di tensione contrassegnati come alto e basso Questi livelli sono identificati da una coppia di simboli: 0 1 Falso Vero perto Chiuso Fondamenti di Informatica Università di rescia 2 Porte Logiche Esempio di circuito Le porte logiche formano la base hardware su cui i circuiti digitali sono costruiti Sono particolari dispositivi che possono calcolare varie funzioni dei valori 0 e 1 ND NND OR + NOR NOT + Ā x 2 f Fondamenti di Informatica Università di rescia 3 Fondamenti di Informatica Università di rescia 4
Reti combinatorie Una rete combinatoria è costituita da un gruppo di elementi (di calcolo) attivi: le porte logiche collegati fra loro da elementi passivi: linee di ingresso, di uscita e di circuito Una rete combinatoria è un circuito elettronico in grado di calcolare in modo automatico funzioni binarie di una o più variabili binarie lgebra di oole E lo strumento matematico usato per lo studio delle reti combinatorie E un particolare tipo di algebra che include: un insieme di supporto (l insieme {0,1} nel ns caso) degli operatori binari: ND ( ) e OR (+) un operatore complemento: NOT ( ) Gli operatori soddisfano certe proprietà che si deducono da un insieme di assiomi Fondamenti di Informatica Università di rescia 5 Fondamenti di Informatica Università di rescia 6 Variabili booleane Operatori booleani Una variabile booleana è una variabile binaria che può assumere uno dei due valori logici denotati con 0 e 1 Usiamo ad esempio i simboli x, y, z, per indicare variabili booleane Può essere x = 1 oppure x = 0 Operatori booleani (o logici) fondamentali: NOT Negazione Logica not(x), x, ~x ND Prodotto Logico x and y, x y, xy OR Somma Logica x or y, x + y Fondamenti di Informatica Università di rescia 7 Fondamenti di Informatica Università di rescia 8
0 0 0 0 1 0 1 0 0 1 1 1 Le 3 funzioni di base: Tabelle di verità + 0 0 0 0 1 1 1 0 1 1 1 1 x x 0 1 1 0 NOT ssiomi dell lgebra di oole Forma ND Forma OR Commutatività = + = + Distributività +C=(+)(+C) (+C)=+C Identità 1 = 0+ = Inverso Ā = 0 +Ā = 1 ND OR Fondamenti di Informatica Università di rescia 9 Fondamenti di Informatica Università di rescia 10 Proprietà dell lgebra di oole ltre proprietà della negazione Forma ND Forma OR Elemento nullo 0 = 0 1+ = 1 Idempotenza = + = ssorbimento (+) = += ssociatività ()C=(C) (+)+C=+(+C) De Morgan = + + = 1 = 1 0 = 0 0 = 1 = 0 = 1 Fondamenti di Informatica Università di rescia 11 Fondamenti di Informatica Università di rescia 12
ltre funzioni di base Formule (espressioni) booleane (logiche) 0 0 1 0 1 1 1 0 1 1 1 0 NND + 0 0 1 0 1 0 1 0 0 1 1 0 NOR Le costanti 0 e 1 e le variabili (simboli a cui possono essere associati i valori 0 e 1) sono espressioni booleane Se E, E 1 ed E 2 sono espressioni booleane lo sono anche (E 1 +E 2 ), (E 1 E 2 ) e (E) Non esistono altre espressioni oltre a quelle che possono essere generate da un numero finito di applicazioni delle regole 1 e 2 Fondamenti di Informatica Università di rescia 13 Fondamenti di Informatica Università di rescia 14 Esempi di formule booleane ((x+y) z) (( x 2 )+(x 3 (x 4 +x 5 ))) Valgono le regole classiche di semplificazione delle parentesi e di priorità degli operatori: (( x 2 )+(x 3 (x 4 +x 5 ))) x 2 +x 3 (x 4 +x 5 ) e il simbolo di solito si omette Equivalenza fra formule booleane Esempi x 2 + x 2 x 3 = (x 2 +x 2 x 3 ) + x 2 + x 2 x 3 + x 2 x 3 = + x 2 + x 3 (x 2 +x 2 ) = + x 2 + x 3 x 2 + x 2 x 3 + x 2 = x 2 + x 2 x 3 = x 2 (1 +x 3 ) = x 2 Fondamenti di Informatica Università di rescia 15 Fondamenti di Informatica Università di rescia 16
Equivalenza fra espressioni booleane Verifica tramite tabella + x 2 + x 2 x 3 + x 2 x 3 = + x 2 + x 3 x 3 x 2 x 2 x 2 x 3 x 2 x 3 +x 2 +x 2 x 3 +x 2 x 3 +x 2 +x 3 0 0 0 1 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 0 0 1 0 1 1 1 1 0 1 1 0 1 1 1 1 1 0 0 1 0 1 1 1 1 1 0 1 0 1 1 Tabelle di verità e proprietà dell lgebra di oole: Esempio ssorbimento: x(x+y) = x x y x+y x(x+y) 0 0 0 0 0 1 1 0 1 0 1 1 1 1 1 1 Fondamenti di Informatica Università di rescia 17 Fondamenti di Informatica Università di rescia 18 Tabelle di verità e proprietà dell lgebra di oole: Esempio Proprietà di De Morgan: x y = x + y x y xy xy x y x + y 0 0 0 1 1 1 1 0 1 0 1 1 0 1 1 0 0 1 0 1 1 1 1 1 0 0 0 0 Esercizi Costruire le tabelle di verità delle seguenti espressioni logiche: (x + y) + (xy) che è equivalente a scrivere (x OR y) OR NOT(x ND y) ((x + z) + y) + (xz) che è equivalente a scrivere NOT ((x OR z) OR y) OR (x ND z) Usando le tabelle di verità, o gli assiomi e le proprietà dell algebra di oole, dimostrare le seguenti equivalenze espressioni booleane: xyz + xyz + xyz + x = x xy + xy + x y = x + y Fondamenti di Informatica Università di rescia 19 Fondamenti di Informatica Università di rescia 20