Lucidi - Dipartimento di Informatica

annuncio pubblicitario
Informatica Generale
Marzia Buscemi IMT Lucca
email: [email protected]
Ricevimento:
Giovedì ore 16.00-18.00
presso
Dipartimento di Informatica, Largo Pontecorvo 3
stanza 306 PS (lab. Global Computing) Tel. 050.2213102
o per posta elettronica
Pagina web del corso:
http://www.di.unipi.it/~buscemi/IG07.htm
1
Finora abbiamo visto...

come si rappresenta
l’informazione (numeri,
caratteri, immagini fisse, video,
suoni) in un calcolatore digitale.
2
...adesso vediamo

Come si elabora l’informazione
codificata all’interno del calcolatore.
(es. operazioni aritmetiche sui numeri,
confronti e modifiche su dati)

Il problema della progettazione dei
circuiti digitali consiste nel:
data in input una sequenza di bit,
produrre in output un’opportuna
sequenza di bit
3
Algebra di Boole


Insieme di regole algebriche della logica binaria
che stanno alla base del funzionamento dei
calcolatori
È costituita da:



un insieme di variabili booleane A,B,C,... che possono
assumere solo i valori 1 (vero) o 0 (falso).
un insieme di funzioni (operazioni) che operano sulle
variabili di input e danno delle variabili di output
un insieme di leggi (assiomi) che definiscono le
proprietà delle funzioni.
4
Algebra di Boole
Le tre funzioni principali sono:
 AND (*): congiunzione logica
A*B (AB) è vera se sia A sia B sono vere

OR (+): “oppure”
A+B è vera se almeno uno tra A e B è vero

NOT ( ¯ oppure ¬ ): negazione
Ā è vera se A è falsa
5
Tavole di verità

Le tavole di verità servono a visualizzare i
valori assunti dalle funzioni a partire da
tutti i possibili valori delle variabili.
A
0
0
1
B
0
1
0
1 1
A*B
0
0
0
1
A
0
0
1
B A+B
0
0
1
1
0
1
1 1
A
0
1
Ā
1
0
1
A partire da AND OR e NOT si possono ottenere tutte le
funzioni che si scrivono con le tavole di verità.
6
Esempio: OR esclusivo
Scrivere la tavola di verità di:
 x-OR (OR esclusivo): “A x-OR B”
vera se è vera solo una tra A e B.
 A partire dalla tavola è possibile
vedere come si può scrivere x-OR in
forma AND-OR:
A x-OR B = (A * ¬B) + (B * ¬A)
7
Esercizi
Per ciascuna delle seguenti funzioni scrivere
tavola e formalizzazione AND-OR.
1. Bit di parità: dati A,B e C, vale 1 se la
somma di 1 assunti in input è dispari,
vale 0 altrimenti.
2. Contatore: dati A,B e C, calcola la somma
binaria degli 1 assunti in input.
3. Sommatore: dati due numeri binari da
due cifre ciascuno, ne esegue la somma.
8
Semplificare funzioni booleane

La mappa di Karnaugh è una tecnica
grafica per rappresentare e ridurre
funzioni booleane.

Si tratta di una versione
bidimensionale delle tavole di verità
che permette di ricavare facilmente
funzioni ridotte in forma AND-OR.
9
Mappa di Karnaugh
AB 00
CD
01
11
10
00
1
0
0
1
01
0
0
1
1
11
1
1
1
1
10
0
0
0
0
1. Raggruppare i più grandi gruppi di 1 adiacenti in numero pari
a una potenza di 2.
10
Mappa di Karnaugh
AB 00
CD
01
11
10
1
0
0
1
0
0
1
1
1
1
1
1
00
01
11
10
0
0
0
0
¬B¬C¬D
AD
CD
2. Ogni gruppo di 1 è rappresentato dall’AND delle variabili i cui valori
non cambiano, prese dirette se valgono 1, prese negate altrimenti.11
Mappa di Karnaugh
AB 00
CD
01
11
10
1
0
0
1
0
0
1
1
1
1
1
1
00
01
11
10
0
0
0
0
¬B¬C¬D
AD
CD
La funzione risultante è data dall’OR di tutti i gruppi:
12
¬B¬C¬D + AD + CD
Esercizi
Scrivere le mappe di Karnaugh e le
(eventuali) funzioni ridotte per:
1. la funzione x-OR
2. la funzione bit di parità
3. la funzione contatore (per il primo bit)
4. la funzione sommatore (per l’ultimo bit)
5. la funzione incremento (dato un numero
x a 3 bit dà in output x+1)
13
Scarica