Insegnamento di Informatica – a.a. 2016-17
Macerata, 4 ottobre 2016
I bit e la loro memorizzazione
INSEGNAMENTO DI INFORMATICA – A.A. 2016-17
Francesco Ciclosi
Insegnamento di Informatica – a.a. 2016-17
L’elaborazione digitale
 Consiste nel rappresentare l’informazione in
cifre binarie, in modo che possano essere
elaborate e utilizzate dalle moderne
tecnologie informatiche
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Telegraphic Signals of Marine Vocabulary
 10 bandiere colorate per i
numeri da 0 a 9
 6 speciali bandiere per i codici
di controllo: accettazione,
terminazione, ecc.
 Dizionario di 260 voci
numerate, poi esteso a 340
 Libro di codici appesantito
1779 : Lord Richard Howe, British Royal Navy con il piombo
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
La codifica delle informazioni
 Ogni informazione è codificata come pattern di
zeri e uno
 Con il termine bit (binary digit, o cifra binaria) si
indicano tali cifre
 I bit sono simboli e non solo valori numerici
• Caratteri alfabetici, segni di punteggiatura, valori
numerici, immagini, suoni, ecc…
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Le operazioni booleane
 Ci consentono di manipolare dei valori del
tipo vero/falso
 Possiamo immaginare che:
• 0 rappresenti il valore falso
• 1 rappresenti il valore vero
 Si tratta di una convenzione analoga a:
• Luce rappresenta il valore vero
• Buio rappresenta il valore falso
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Le operazioni booleane di base
 Sono tre: AND, OR, XOR (OR esclusivo)
 Combinano una coppia di valori (in input) per
restituire un terzo valore (in output, o risultato)
 Sono analoghe alle operazioni aritmetiche
anche se
 combinano valori logici vero/falso e non valori
numerici
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
L’operatore AND (⋀)
 Riflette la verità o la falsità di un’asserzione
formata unendo due asserzioni più semplici
 Es: R AND S
 Tale asserzione è vera solo quando entrambe le
sue componenti (R, S) sono vere
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
AND: un esempio
 Consideriamo H AND E, dove:
• H = Harry è un mago
• E = Ermione è una strega
• H AND E → Harry è un mago AND Ermione è una
strega
 L’asserzione finale è
• vera (output =1) solo nel caso in cui è vero che:
o Harry è un mago e Ermione è una strega
• falsa (output = 0 ) in tutti gli altri casi
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
La tabella di verità dell’operatore AND
 Gode della proprietà
associativa
 La porta logica AND è un
meccanismo comune per
avere un segnale di vero se
un certo numero di altri
segnali sono tutti veri
 Nella teoria degli insiemi
corrisponde all’intersezione
A
B
A AND B
0
0
0
0
1
0
1
0
0
1
1
1
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
L’operatore OR (⋁)
 Riflette la verità o la falsità di un’asserzione
formata unendo due asserzioni più semplici
 Es: R OR S
 Tale asserzione è vera quando almeno una delle
sue componenti (R, S) è vera
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
OR: un esempio
 Consideriamo H OR R, dove:
• H = Harry è un mago
• R = Ron è una strega
• H OR R → Harry è un mago OR Ron è una strega
 L’asserzione finale è
• vera (output =1) se è vera almeno una delle due:
o Harry è un mago
o Ron è una strega
• falsa (output = 0 ) solo nel caso in cui sono entrambe false
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
La tabella di verità dell’operatore OR
 Gode della proprietà
associativa
 La porta logica OR è un
meccanismo comune per
avere
A
B
A OR B
0
0
0
0
1
1
1
0
1
1
1
1
• un segnale alto se almeno un
segnale è alto
• un segnale basso se e solo se
tutti i segnali sono bassi
 Nella teoria degli insiemi corrisponde all’unione
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
L’operatore XOR (⊕)
 Riflette la verità o la falsità di un’asserzione
formata unendo due asserzioni più semplici
 Es: R XOR S
 Tale asserzione è vera quando una delle sue
componenti (R, S) è vera, ma non entrambe
contemporaneamente
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
La tabella di verità dell’operatore XOR
 L’operatore è detto
A
anche EX-OR oppure
0
OR esclusivo
0
 Restituisce 1 se e solo se
1
il numero degli operandi
1
uguali a 1 è dispari,
mentre restituisce 0 in
tutti gli altri casi
 Nella teoria degli insiemi
corrisponde alla differenza simmetrica
B
A XOR B
0
0
1
1
0
1
1
0
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
L’operatore NOT





Opera su di un solo input
Il suo output è l’opposto dell’input
Es: P = Paolo è un bambino
NOT P = Paolo non è un bambino
Se l’input rappresenta la verità/falsità di P (Paolo è
un bambino), l’output rappresenterà la verità/falsità
di NOT P (Paolo non è un bambino)
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
La tabella di verità dell’operatore NOT
 L’operatore NOT restituisce il valore
inverso a quello in entrata
 Una concatenazione di NOT è
semplificabile con
• un solo NOT in caso di ripetizioni
dispari
• nessun NOT in caso di ripetizioni pari
A
NOT A
0
1
1
0
 La porta logica NOT possiede una
sola variabile binaria
 Spesso è inglobato in operatori brevi
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Altri operatori (1/2)
NAND
NOR
A
B
A NAND B
0
0
1
0
1
1
1
0
1
1
1
0
A
B
A NOR B
0
0
1
0
1
0
1
0
0
1
1
0
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Altri operatori (2/2)
XNOR
Buffer
A
B
A XNOR B
0
0
1
0
1
0
1
0
0
1
1
1
A
Buffer A
0
0
1
1
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Le porte logiche
 Una porta logica (gate) è un dispositivo che dati
i valori di input produce l’output di
un’operazione booleana
 Nei moderni calcolatori sono realizzate con
circuiti elettronici
• In questo caso i valori 0 e 1 rappresentano dei livelli
di tensione
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Il circuito flip-flop (1/2)
 È un’unità fondamentale della memoria del
computer
 Produce un valore di output che rimane costante
fintanto che un impulso su una delle due linee di
input non lo trasforma nell’altro valore
• Il valore di output è 0 o 1
• L’impulso è una variazione temporanea a un 1 che
torna 0
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Il circuito flip-flop (2/2)
 Si può configurare un flip-flop in modo che
«ricordi» l’output (0 o 1) sotto il controllo di stimoli
esterni
• Se gli input rimangono entrambi 0 l’output non cambia
• Se l’input superiore va temporaneamente a 1 si forma
l’output 1
• Se l’input inferiore va temporaneamente a 1 si forma
l’output 0
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Un semplice circuito flip-flop
0
0
???
1
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Flip-flop con input superiore a 1
1
1
1
1
0
1
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Flip-flop con input superiore che torna a 0
0
1
1
1
0
1
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Flip-flop con input inferiore a 1
0
0
0
0
1
0
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Flip-flop con input inferiore che torna a 0
0
0
0
0
0
1
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Alcuni scopi del flip-flop
1. È possibile costruire dispositivi a partire dalle
porte logiche
• Processo di progettazione dei circuiti digitali
2. Ci fornisce un esempio di astrazione e dell’uso di
elementi astratti
•
Esistono diversi modi per costruire un flip-flop, ma
le sue proprietà esterne rimangono le stesse
3. Ci fornisce un mezzo per memorizzare un bit in
un computer
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Un altro esempio di flip-flop
 La struttura interna del
circuito è differente
MA
 Le sue proprietà esterne
sono le stesse
 Per usarlo come strumento astratto è sufficiente
comprendere le sue proprietà esterne
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
Alla base dei chip
 In un computer si possono utilizzare molti flipflop (in forma di piccoli circuiti elettrici) per
registrare le informazioni che sono codificate
come pattern binari
 La tecnologia VLSI (Very Large-Scale Integration)
consente la costruzione di milioni di componenti
elettrici su un wafer di silicio (chip)
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
I pattern di bit
 Per descrivere le attività all’interno di un
computer usiamo dei pattern di bit, chiamati
stringhe di bit
 Tali stringhe possono essere molto lunghe e
prendono il nome di flussi binari
• 110110101010 è un esempio di pattern di bit
 Per semplicità di notazione usiamo una
notazione abbreviata detta esadecimale
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
La codifica esadecimale
 Tale codifica impiega un
solo simbolo per
esprimere 4 bit
 I simboli ammessi sono i
seguenti:
• 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
A, B, C, D, E, F
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code
Insegnamento di Informatica – a.a. 2016-17
I miei contatti
linkedin
http://it.linkedin.com/pub/francesco-ciclosi/62/680/a06/
facebook
https://www.facebook.com/francesco.ciclosi
twitter
@francyciclosi
www
http://docenti.unimc.it/f.ciclosi
http://www.francescociclosi.it
Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati
© Francesco Ciclosi – Settembre 2016
CC-BY-SA 4.0 – Common Deed – Legal Code