Algebra di Boole e Circuiti Logici

Slides:



Advertisements
Presentazioni simili
Training On Line - CONP. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Pluriennali > Nuova Richiesta Si accede alla pagina di Richiesta.
Advertisements

Algebra Booleana Generalità
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Caduta non guidata di un corpo rettangolare in un serbatoio Velocità e rotazione.
Algebra di Boole Casazza Andrea 3EA I.I.S. Maserati.
Le distribuzioni di probabilità continue
D. Menasce1 Queste trasparenze sono disponibili sul sito web dellautore: (selezionare lopzione COURSES) Queste.
I numeri naturali ….. Definizione e caratteristiche
Elaborazione dei segnali mediante circuiti analogici o digitali.
1 MeDeC - Centro Demoscopico Metropolitano Provincia di Bologna - per Valutazione su alcuni servizi erogati nel.
Mat_Insieme Lavoro di Gruppo Prodotti Notevoli
TAV.1 Foto n.1 Foto n.2 SCALINATA DI ACCESSO ALL’EREMO DI SANTA CATERINA DEL SASSO DALLA CORTE DELLE CASCINE DEL QUIQUIO Foto n.3 Foto n.4.
1 Pregnana Milanese Assessorato alle Risorse Economiche Bilancio Preventivo P R O P O S T A.
(sommario delle lezioni in fondo alla pagina)
COORDINATE POLARI Sia P ha coordinate cartesiane
Frontespizio Economia Monetaria Anno Accademico
I sistemi di riferimento
Lez. 3 - Gli Indici di VARIABILITA’
Algebra di Boole.
esponente del radicando
Ordini Parziali - Reticoli
Esercitazioni su circuiti combinatori
Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie di analisi.
Reti Logiche A Lezione n.1.4 Introduzione alle porte logiche
Analisi e sintesi di circuiti combinatori
1 Sistemi Digitali. 2 Definizione Analog Waveform Time Voltage (V) 0 5 Digital Waveform Time Voltage (V)
Algebra Booleana.
Sistemi Digitali.
Algebra di Boole ed elementi di logica
Algebra di Boole ed elementi di logica
Obiettivi del corso di Statistica Medica.
A.S.E.8.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 8 ALGEBRA BOOLEANA PostulatiPostulati Principio di dualitàPrincipio di dualità Teoremi fondamentaliTeoremi.
Canale A. Prof.Ciapetti AA2003/04
Corso di Informatica (Programmazione)
IFTS2002 Acq. Dati Remoti: INFORMATICA
Ufficio Studi UNIONCAMERE TOSCANA 1 Presentazione di Riccardo Perugi Ufficio Studi UNIONCAMERE TOSCANA Firenze, 19 dicembre 2000.
Realizzazione e caratterizzazione di una semplice rete neurale per la separazione di due campioni di eventi Vincenzo Izzo.
Master universitario di II livello in Ingegneria delle Infrastrutture e dei Sistemi Ferroviari Anno Accademico 2012/2013 Cultura dimpresa, valutazione.
La partita è molto combattuta perché le due squadre tentano di vincere fino all'ultimo minuto. Era l'ultima giornata del campionato e il risultato era.
Cos’è un problema?.
L'algebra di Boole e le sue applicazioni
Indice: L’algebra di Boole Applicazione dell’algebra di Boole
Prima e Seconda Forma Canonica
Intelligenza Artificiale - AA 2001/2002 Logica formale (Parte 2) - 1 Intelligenza Artificiale Breve introduzione alla logica classica (Parte 2) Marco Piastra.
Claudia Raibulet Algebra Booleana Claudia Raibulet
Introduzione ~ 1850 Boole - De Morgan – Schroeder ALGEBRA BOOLEANA
Contatore: esempio di circuito sequenziale
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
ORDINE DI CHIAMATA a 1minuto e 2 minuti PRINCIPALI TEMPI DELLA COMPETIZIONE ORDINE DI CHIAMATA a 1minuto e 2 minuti PRINCIPALI TEMPI DELLA COMPETIZIONE.
1)Completa la seguente successione: C4, B7, E10, D13, G16,. A. G19 B
INFORMATICA MATTEO CRISTANI. INDICE CICLO DELLE LEZIONI LEZ. 1 INTRODUZIONE AL CORSO LEZ. 2 I CALCOLATORI ELETTRONICI LEZ. 3 ELEMENTI DI TEORIA DELL INFORMAZIONE.
LE SAI LE TABELLINE? Mettiti alla prova!.
1 Questionario di soddisfazione del servizio scolastico Anno scolastico 2011/2012 Istogramma- risposte famiglie.
Un trucchetto di Moltiplicazione per il calcolo mentale
LA CIRCONFERENZA.
NO WASTE Progetto continuità scuola primaria scuola secondaria Salorno a.s. 2013_
CORSO DI APPROFONDIMENTO
ELETTRONICA GEORGE BOOLE FUNZIONI LOGICHE Lezione N° 1
Il numero più grande Accademia dei Lincei
TRASFORMATA DI FOURIER
Teoria dei sistemi Autore: LUCA ORRU'.
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algebra di Boole ed elementi di logica Marco D. Santambrogio – Ver. aggiornata.
Algebra di Boole.
Università degli studi di Parma Dipartimento di Ingegneria dell’Informazione Politecnico di Milano © 2001/02 - William Fornaciari Reti Logiche A Lezione.
Fondamenti di Informatica1 Memorizzazione su calcolatore L'unità atomica è il bit (BInary DigiT) L'insieme di 8 bit è detta byte Altre forme di memorizzazione:
Rappresentazione dell'informazione
Algebra di Boole L’algebra di Boole è un formalismo che opera su variabili (dette variabili booleane o variabili logiche o asserzioni) che possono assumere.
Vincenza Ferrara - Dicembre 2007 Fondamenti di Matematica e Informatica Laboratorio Informatica I anno a.a
Rappresentazione dell'informazione 1 Se ho una rappresentazione in virgola fissa (es. su segno e 8 cifre con 3 cifre alla destra della virgola) rappresento.
Algebra di Boole.
Transcript della presentazione:

Algebra di Boole e Circuiti Logici

Perché è importante la logica è alla base del ragionamento umano costituisce il fondamento teorico per trattare i circuiti digitali che sono alla base dei calcolatori è essenziale per la costruzione degli algoritmi e quindi per i linguaggi di programmazione è alla base di linguaggi non procedurali come il Prolog

L’Algebra di Boole fu ideata nella prima metà del XIX secolo dal matematico inglese George Boole, con l’intento di ricondurre al rigore matematico il ragionamento umano fu utilizzata da C. E. Shannon all’inizio del XX secolo per descrivere il comportamento dei circuiti a commutazione (relays), in uso nella telefonia, e da qui ai dispositivi digitali È una struttura algebrica, potrebbe essere introdotta in modo formale. Qui verrà proposta in modo intuitivo.

Le basi dell’algebra booleana Nell’algebra di Boole: Si mettono in corrispondenza le proposizioni, o in generale gli eventi binari, con le variabili logiche (o booleane) Le variabili logiche sono denotate con le lettere dell’alfabeto (A,B,…a,b,…) Le variabili logiche possono assumere solo due valori: Vero (T, o anche 1) o Falso (F, o anche 0)

Le basi dell’algebra booleana (2) Esempi: macchina_parte  P (= T, o 1, se la macchina parte, F, o 0, se non parte) semaforo_verde  S (= 1 se è verde, 0 altrimenti) interruttore  I (= 1 se è chiuso, 0 se aperto) Nota: l’associazione stato  valore di verità è arbitraria.

Le basi dell’algebra booleana (3) Nell’algebra di Boole: si possono mettere in relazione n-ple di variabili indipendenti con una particolare variabile dipendente la variabile dipendente è detta funzione booleana le funzioni booleane possono assumere solo due valori, T o F, ovvero 1 o 0 Esempio y = F(x1, x2, … xn).

Tavola di verità Una funzione è descritta in modo esaustivo stabilendo, per ogni combinazione delle variabili di ingresso, se vale 1 oppure 0. Si crea dunque una tabella, detta tavola di verità della funzione. Qui di seguito un esempio di tavola di verità:

Esempio di tavola di verità

Esempio applicativo “Si può telefonare con il cellulare solo se la batteria è carica, se c’è campo e c’è credito”. Le variabili logiche sono: Variabile dipendente: T: vale 1 (= True) se si può telefonare; Variabili indipendenti: B: vale 1 (= True) se la batteria è carica; C: vale 1 (= True) se c’è campo; P: vale 1 (= True) se c’è credito.

Esempio applicativo (2) La tavola di verità della funzione telefonare

Quante funzioni di n variabili? Il numero di combinazioni delle variabili di ingresso è 2n. Infatti la prima variabile può assumere 2 valori, per ciascuno di essi la seconda variabile può assumere 2 valori, e così via, per un totale di 2  2 2… 2 = 2n. Quante funzioni si possono costruire con n variabili?

Quante funzioni di n variabili? (2) n varabili Numero variabili: n Numero combinazioni: k = 2n = 2^n Numero funzioni: m = 2^k = 2^(2^n) Esempio: se n = 4, k = 2^4 = 16 e m = 2^16 = 65.536 k combinazioni m funzioni

Operatori logici: l’AND Operatore AND esprime il concetto di “e insieme” indicato nei seguenti modi: A AND B, A  B oppure A  B opera secondo la seguente tavola di verità:

AND (2) esempio: mi_compro_il_gelato se fa_caldo AND ho_i_soldi. viene anche detto prodotto logico, per analogia con operatore matematico. Il simbolo circuitale dell’AND:

AND (3) analogo elettrico dell’operatore AND: due interruttori in serie.

OR L’operatore OR Esprime il concetto di disgiunzione logica (una cosa oppure un’altra oppure entrambe) indicato nei seguenti modi: A OR B, A + B oppure A  B opera secondo la seguente tavola di verità:

OR (2) esempio: esco_con_l’ombrello se piove OR nevica. viene anche detto somma logica (ma qui l’analogia con l’operatore aritmetico è più lasca) Il simbolo circuitale dell’OR:

OR (3) analogo elettrico in un circuito dell’OR: due interruttori in parallelo

NOT Operatore NOT: ha il significato di negazione logica indicato nei seguenti modi: NOT A, oppure A. Opera secondo la seguente tavola di verità:

NOT (2) Esempio: è_sereno se nuvoloso. Il simbolo circuitale del NOT:

NOT (3) analogo elettrico dell’operatore NOT: Nota: per realizzare la funzione di NOT occorre un dispositivo “attivo” è realizzato di solito con un semplice transistor.

Altri operatori notevoli sono derivabili dagli operatori elementari sono di uso frequente o sono concettualmente rilevanti

EX-OR L’operatore EX-OR (OR esclusivo): Indicato nei seguenti modi: A EX-OR B, oppure A  B opera secondo la seguente tavola di verità:

EX-OR (2) A  B è equivalente all’espressione Il simbolo circuitale dell’EX-OR:

EX-OR (3) Alcune interpretazioni dell’EX-OR (facendo riferimento alla tavola di verità): indica diversità (vale 1 se e solo se A e B sono diversi) corrisponde alla somma-modulo-2 (in cui si tiene conto solo del risultato e non del riporto) condizionamento: sia B è il segnale condizionante. Quando B=0, l’uscita dell’EX-OR corrisponde al segnale A. Quando B=1, l’uscita corrisponde al segnale A invertito (invertitore pilotato).

Implicazione logica L’operatore di implicazione logica modella il costrutto logico “Se A allora B” indicato come A  B (cioè A implica B) opera secondo la seguente tavola di verità:

Implicazione logica (2) vale la seguente equivalenza: (la formula equivalente permette le manipolazioni algebriche) si noti che se la premessa è Falsa (A = 0), la formula resta Vera indipendentemente da B esempio: Se triangolo_rettangolo allora un_angolo_novanta_gradi è il fondamento del ragionamento deduttivo

Espressioni logiche Combinazione di variabili e operatori logici possono essere valutate per ogni combinazione delle variabili presenti e possono assumere il valore 0 o 1 anche le espressioni si rappresentano mediante la tavola di verità. Nota: Spesso l’operatore di prodotto logico viene omesso: T = ab + c vale la priorità degli operatori (nell’ordine, NOT, poi AND e infine OR)

Espressioni equivalenti E1 ed E2 sono equivalenti se per tutte le combinazioni delle variabili indipendenti per cui E1 = 1 anche E2 = 1 e per tutte le combinazioni delle variabili indipendenti per cui E1 = 0 anche E2 = 0

Espressioni equivalenti (2) Esempio di equazioni equivalenti:

Espressioni equivalenti (3)

Espressioni complementari E1 ed E2 sono complementari se: per tutte le combinazioni delle variabili indipendenti per cui E1 = 1 risulta E2 = 0 e per tutte le combinazioni delle variabili indipendenti per cui E1 = 0 risulta E2 = 1 Nota: se due espressioni sono complementari: E1 = E2

Espressioni complementari (2) Esempio di funzioni complementari:

Espressioni complementari (3)

Espressioni duali E2 è duale di E1 se può essere ottenuta da E1: sostituendo l'operatore OR con l'operatore AND e viceversa (tenendo conto delle precedenze degli operatori in E1 !!); sostituendo il valore 0 con il valore 1 e viceversa. Regola di complementazione: l'espressione complementare di E1 può essere ottenuta dalla sua duale E2 complementando tutte le variabili in E2 (teorema di De Morgan) .

Espressioni duale e complementare F(a,b,c) = a · (b + c) Fd = a + (b · c) F = a + (b · c) a b c F Fd F 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 0 1 0 1 1 0 1 1 1 0 0 0 1 1 1 0 1 1 1 0 1 1 0 1 1 0 1 1 1 1 1 0

Teoremi dell’algebra di Boole si possono dimostrare per induzione completa: è sufficiente fare la tavola di verità. vale inoltre una proprietà legata alla dualità: è stato dimostrato che se vale un teorema, vale anche il teorema duale, senza che di debba ripetere la dimostrazione. ecco le proprietà e i teoremi più importanti:

Teoremi dell’algebra di Boole (2)

Teoremi dell’algebra di Boole (3)

Teoremi dell’algebra di Boole (4)

Teoremi dell’algebra di Boole (5)

Teoremi dell’algebra di Boole (6) Da notare che nell’algebra di Boole la proprietà distributiva vale sia per il prodotto (logico) che per la somma (logica).

Dalle funzioni alle espressioni logiche Una funzione logica si rappresenta mediante la sua tavola di verità Esempio: un comitato di tre persone A, B e C prende le decisioni a maggioranza. Si vuole la funzione che esprima che una mozione è approvata (passa, P). Con le stesse lettere A, B e C si indicano le variabili logiche che assumono il valore 1 se la corrispondente persona ha dato voto favorevole, 0 altrimenti.

Dalle funzioni alle espressioni logiche (2) Tavola di verità della funzione “approvazione a maggioranza”:

Dalle funzioni alle espressioni logiche (3) È possibile rappresentare questa funzione mediante una espressione? Si ricorre al concetto di equivalenza: una funzione può essere rappresentata mediante una espressione che abbia la stessa tavola di verità. Una delle possibili espressioni si ricava seguendo il seguente algoritmo: si individuano le combinazioni per le quali la funzione vale 1; ogni combinazione fornisce un termine, formato dalla congiunzione (operatore AND) di tutte le variabili, affermate se le variabili in quella combinazione assumono il valore 1, negate se assumono il valore 0; l’espressione è la disgiunzione (operatore OR) di tutti i termini

Dalle funzioni alle espressioni logiche (4) Espressione equivalente del tipo somma di prodotti (min term): Applicando i teoremi di base (quello della fusione diretta), si ottiene la forma minima:

Esempio applicativo:l’analisi di un circuito Dato il circuito in figura, desumerne il funzionamento.

L’analisi di un circuito (2) Siano A, B e C le variabili logiche associate agli interruttori (= 1 se chiuso, 0 altrimenti). Sia L la variabile associata alla lampadina (= 1 se accesa, 0 spenta). La tavola di verità si realizza controllando se, per ogni combinazione delle variabili indipendenti, la luce è accesa o spenta.

L’analisi di un circuito (3) Considerando le combinazioni per cui L = 1, si ottiene:

L’analisi di un circuito (4) Applicando i teoremi (proprietà distributiva e X+X=X), si minimizza l’espressione: la luce si accende solo se è chiuso l’interruttore C e insieme uno dei due interruttori A o B.

Sintesi di un circuito Problema: in una stanza l’illuminazione è comandata da due deviatori A e B, situati in punti diversi. All’inizio la luce è spenta e i due deviatori si trovano in una posizione che chiamiamo X. Se uno dei due deviatori, diciamo A, viene spostato nella posizione Y, vogliamo che la luce si accenda. Se anche l’altro deviatore viene spostato in posizione Y, vogliamo che la luce si spenga.

Sintesi di un circuito (2) Siano A e B le variabili logiche associate ai deviatori. A ciascuna posizione assunta da un deviatore associamo un valore logico: ad esempio associamo 0 alla posizione X, 1 alla posizione Y. Sia L la variabile associata alla luce (= 0 se spenta, 1 se accesa). La tavola di verità della funzione L è la seguente:

Sintesi di un circuito (3) Considerando le combinazioni per cui L = 1, si ha l’espressione:

Sintesi di un circuito (4) Ricordando che l’AND si ottiene con una connessione serie e l’OR con una connessione parallela, si ottiene il circuito:

Esempio: il full-adder La somma S di 2 numeri binari A e B di n bit può essere ricondotta a n somme elementari di 3 bit tenendo conto che: ak, bk sono i bit di peso k di A e B sk è il k-esimo bit di S rk è il riporto generato dalla somma dei bit di peso k-1, k-2, ... 0 di A e B. r-1 = 0

Full-adder: tabelle di verità Si possono ricavare le tabelle di verità di sk e rk in funzione di ak , bk e rk-1 ak bk rk-1 sk rk 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1

Full-adder: espessioni booleane 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 ak bk rk-1 sk rk akbkrk-1 akbkrk-1 akbkrk-1 akbkrk-1 akbkrk-1 akbkrk-1 akbkrk-1 akbkrk-1

Full adder: semplificazione delle espressioni Le espressioni di sk e rk sono date da:

Full adder: schema circuitale Le funzioni che forniscono sk ed rk possono essere realizzate in un unico circuito elettronico (full adder):

Sommatore a n bit Il full-adder può essere usato come circuito base per un sommatore a n bit: an bn rn-1 an-1 bn-1 rn-2 a0 b0 carry rn rn-1 r0 sn sn-1 s0

Esercizio Problema: Si considerino due valori A = a1a0 e B = b1b0 espressi in complemento a 2 su 2 bit. Scrivere l’espressione di una funzione booleana F che è vera se e solo se A = -B Soluzione: conviene considerare i bit che costituiscono A e B come variabili indipendenti e scrivere la funzione come F (a0,a1,b0,b1).

Esercizio (2)

Esercizio (3)