Elaborazione dell`informazione Rappresentazione dei numeri

Transcript

Elaborazione dell`informazione Rappresentazione dei numeri
Elaborazione dell’informazione
Elaborazione di informazione prevede una codifica
come:
Dato: insieme di simboli rappresentati su un supporto
Negli elaboratori: rappresentazione binaria (bit)
Codifiche per rappresentare informazione
INFORMATICA PER LE
DISCIPLINE UMANISTICHE 2
(13042)
Numerica
Testuale
Grafica
Sonora
…
Rappresentazione dei dati
Elaborazione dell’informazione
Rappresentazione dei dati
Rappresentazione dei numeri
Codifica posizionale
Cifre assumono valori in funzione alla loro posizione
Le cifre sono elevate a potenze della base
Es.
(248)10 = 2*102 + 4*101 + 8*100
(10010)2 = 1*24 + 0*23 + 0*22 +1*22+0*20=(18)10
Elaborazione dell’informazione
Codifiche posizionali rilevanti
Codifica binaria (base 2); simboli → {0,1}
Codifica decimale (base 10); simboli usati →
{0,1,…, 9}
Codifica ottale (base 8); simboli usati → {0,1,…,7}
Codifica esadecimale (base 16); simboli usati →
{0,1,…, 9,A,…,F}
Elaborazione dell’informazione
Teoria dell’informazione: quantità di informazione
contenuta in un supporto
Quantità di informazione: legata alla riduzione di
incertezza portata da una configurazione del
supporto
E’
legata alla probabilità che si verifichi una
configurazione
Rappresentazione dei dati
Teoria dell’informazione
Elaborazione dell’informazione
Esempio
Viene lanciata una moneta
Su un supporto scriviamo il risultato del lancio
Data una moneta: incertezza → si verifica testa o croce?
Probabilità di una configurazione: 1/2
Quantità di informazione del risultato scritto sul supporto:
legata alla probabilità 1/2
In un dado: 6 possibili configurazioni, ognuna di probabilità
1/6
Quantità di informazione?
Elaborazione dell’informazione
Quantità di informazione: differenza tra i
logaritmi delle probabilità prima e dopo la lettura
di una configurazione
Bit: è l’unità di misura elementare
dell’informazione
Nel caso della moneta:
log2(1) – log2 (1/2)= 1 bit
Elaborazione dell’informazione
Nel caso di un dado:
log2(1) – log2 (1/6)= 2,586496 bit
Estrazione di un numero tra 1 e 90
log2(1) – log2 (1/90)= 6,49185 bit
Informazione digitale e analogica
Rappresentazione dei dati
Codifica analogica e digitale
Due approcci per codificare l’informazione
Codifica
analogica
Codifica digitale
Codifica analogica: individuazione di una
grandezza analoga per rappresentare
incrementi/decrementi
Es. termometro a mercurio, orologio analogico
Informazione digitale e analogica
Informazione digitale e analogica
Codifica digitale
Alfabeto di simboli
Regole di codifica: legame tra un valore e
una sequenza di simboli
Codifica analogica
Rappresenta in modo
implicito metainformazione
Es. orologio digitale
Alfabeto: notazione decimale
Regole di codifica: relazioni tra i numeri utilizzati
Ordinale
Codifica digitale
Più compatta
Meta-informazione:
definita dalle regole
di codifica
Metrico
Informazione discreta e continua
Informazione digitale
Informazione discreta
Insieme di valori
riconducibile ai numeri
naturali
Es.: termometro
digitale
Codifica digitale
Permette una rappresentazione discreta
Per rappresentare una grandezza continua →
quantizzazione
Quantizzazione: divisione dell’intervallo dei
possibili valori in intervalli discreti
Informazione continua
Insieme di valori
riconducibile ai numeri
reali
Es.: termometro a
mercurio
Informazione digitale
Informazione digitale
Codifica digitale
Per rappresentare l’andamento nel tempo di una
grandezza continua → campionamento
Campionamento:
dell’intervallo in sottointervalli
Scelta di un istante di riferimento del sottointervallo
Valore campionato negli istanti di riferimento scelti
Suddivisione
Quantizzazione e campionamento: base della
codifica digitale
Provocano perdita di informazione
Risultati teorici indicano come limitare la perdita di
informazione
Codifica digitale binaria: basata su valori binari
Frequenza di campionamento: numero campioni
nell’unità di tempo
ampiezza
Campionamento
ampiezza
Campionamento
tempo
tempo
ampiezza
Campionamento
ampiezza
Campionamento
tempo
ampiezza
Quantizzazione
ampiezza
Quantizzazione
tempo
tempo
tempo
Trasmissione dell’informazione digitale
Informazione digitale favorisce la corretta
trasmissione dell’informazione
Nel caso dell’informazione binaria digitale
possibili valori nell’alfabeto
Ogni altro valore: errore
Trasmissione dell’informazione digitale
Meccanismi di protezione
Schema di ripetizione: simboli inviati più volte
Messaggio: 0110 0111
Messaggio trasmesso: 0110 0110 0111 0111
Messaggio con errore: 0110 1110 0011 0111
Due
Possibili meccanismi di protezione basati su
ridondanza
Controllo di parità: messaggio diviso in blocchi e
aggiunta di un bit di parità (numero di 1 nel blocco)
Messaggio: 0110 0111
Messaggio trasmesso: 0110 0110 0
Messaggi con errore: 0110 111 0
1110 111 0
Informazione non numerica
Rappresentazione dei dati
Rappresentazione binaria di
informazione non numerica
Entità del mondo reale codificate tramite codici:
sequenze di simboli
Una codifica univoca permette di identificare ogni
singolo entità
Codifica condivisa tra sorgente e destinatario
Esempi:
Matricola
studente
Codice fiscale
Codice ISBN
Codifica binaria
Nei calcolatori → codifica binaria
Supponiamo di avere una successione di k bit: posso
rappresentare 2k successioni distinte
k=2
k=3
00, 01, 10, 11
000, 001, 010, 011, 100, 101, 110, 111
…
Se ho k bit posso costruire una codifica univoca per al
più 2k entità
Codifica binaria
Supponiamo di dover codificare dati non numerici. Es. i mesi dell’anno
Codifica dell’insieme: ad ogni elemento associo una sequenza univoca.
Di quanti bit ho bisogno?
gennaio
gennaio
gennaio
febbraio aprile
marzo
giugno
maggio
agosto
luglio settembre
ottobre novembre
febbraio
marzo
maggio
aprile
giugno
luglio
agosto
settembre
ottobre novembre
1
dicembre
dicembre
0
febbraio
marzo
Carattere: simbolo dell’alfabeto
Stringa: successione di caratteri
Conversione in codifica binaria dei caratteri
Codifica binaria univoca per ogni simbolo
dell’alfabeto:
Lettere
maiuscole e minuscole
Simboli interpunzione
Cifre numeriche e simboli matematici
Altri caratteri (es. è, ò, @, …)
0001
0010
aprile
maggio
giugno
0011
0100
0101
0110
luglio
agosto
settembre
ottobre
novembre
dicembre
Codifica del testo
0000
0111
1000
1001
1011
1110
Codifica del testo
Codifica ASCII (American Standard Code for
Information Interchange): codifica con 7 bit
Successivamente Extended ASCII: estensione a 8 bit
(1 byte)
Il carattere “A” è rappresentato da 0100 0001
Codifica del testo
Altre codifiche:
EBCIDC (Extended Binary Coded Decimal Interchange
Code): 8 bit
Codice Unicode: 2 byte (16 bit) per rappresentare
un carattere
Codifica del testo
File
di puro testo (file .txt)
File di testo con formattazione (file .doc, .odt)
Linguaggi di marcatura: marcature (tag) per descrivere
alcuni aspetti del documento
Linguaggi di descrizione dell’impaginazione: PostScript,
PDF (Portable Document Format)
Codice
Unicode esteso fino a 21 bit
Obiettivo: favorire interoperabilità
Immagini
Suoni
Rappresentazione digitale delle immagini
Campionamento immagine
matrice di pixel (picture element)
Ogni pixel associato a un colore
Quantizzazione
Profondità
di colore: numero di colori (bit) per pixel
Formati raster/vettoriale
Formati
compressi: JPEG, GIF,…
Formati non compressi: BMP,…
Codifica digitale (CD audio):
Frequenza
di campionamento: 44.100 Hz
Quantizzazione: 65.536 livelli (16 bit)
Bitmap:
File di testo utilizzati dagli elaboratori
Formato file audio
Non
Compressi: WAV, AIFF
Compressi: MP3, AAC
Filmati
Compressione
Filmato digitale costituito da sequenza di
fotogrammi (frame)
Alcuni formati:
QuickTime
memorizzazione
MPEG-2
trasmissione
FLV
(FLash Video)
AVI (Audio Video Interleave)
Compressione
Testo da codificare su alfabeto A,C,G,T
A: 50 occorrenze
C: 20 occorrenze
G, T :10 occorrenze
Codifica 1
A: 00
C: 01
G: 10
T: 11
Definizione nuova codifica: utilizzo di informazioni
sui dati da codificare
Rapporto di compressione: dimensione del file non
compressione/dimensione del file compresso
Compressione
Esempio
Definizione nuova codifica digitale → maggiore
efficienza
Vantaggi:
Codifica 2 – più efficiente
A: 0
C: 10
G: 110
T: 111
Esempio
A: 50 occorrenze, C: 20 occorrenze, G, T: 10 occorrenze
Codifica 1: 50*2+20*2+10*2+10*2=180 bit
Codifica 2: 50*1+20*2+10*3+10*3=150 bit
Codifica 1
A: 00
C: 01
G: 10
T: 11
Codifica 2 – più efficiente
A: 0
C: 10
G: 110
T: 111
Compressione
Tecniche di compressione
senza perdita di informazione (lossless):
Rappresentazione dei dati
Processo
reversibile
Tecniche statistiche: frequenza simboli
Sostituzione: ripetizione simboli
Sicurezza informatica
con perdita di informazione (lossy):
Processo
irreversibile
Elevati rapporti di compressione
Eliminazione informazione non rilevante
Sicurezza informatica
Trattamento dell’informazione legato alla sicurezza
dei dati e informazioni codificate
Alcuni aspetti della sicurezza:
Riservatezza
Integrità
Normativa italiana
Distingue tra tre tipi di dati:
Dato
personale
Dato sensibile
Dato giudiziario
La raccolta di informazioni personali prevede
Autenticità
Informativa
Non
Consenso
ripudiabilità
Disponibilità
Normativa italiana
Crittografia
Misure minime di sicurezza
Autenticazione informatica
Protezione da software maligni
Procedure per ripristino dei dati
Documento programmatico di sicurezza
Crittografia:
Tecnica per la protezione di informazione
(messaggi): limitare la lettura ai destinatari
Crittografia
Crittografia a chiave segreta
In base ad un algoritmo di cifratura:
Ad esempio: cifratura dei messaggi di posta elettronica
Il
messaggio da inviare viene trasformato in
messaggio cifrato dal mittente
Il messaggio cifrato viene trasferito
Il ricevente utilizza un algoritmo di decifratura per
ricostruire il messaggio originale
Due modalità
A
chiave segreta (crittografia simmetrica)
A chiave pubblica (crittografia asimmetrica)
La crittografia permette di costruire un messaggio
non decifrabile per chi non ha la chiave di
decifrazione
Crittografia a chiave
segreta: il messaggio
viene cifrato/decifrato
con una chiave in
possesso del mittente e
del ricevente
Ad es.: ogni parola è
associata un codice
Problemi: trasmissione
della chiave
Testo
Messaggio:
Ciao come stai
Chiave segreta
Messaggio criptato:
Testo criptato 4432 4126 3212
Chiave segreta
Testo
Messaggio
decriptato:
Ciao come stai
Crittografia a chiave pubblica
Crittografia a chiave
pubblica
Utilizza due chiavi
complementari con
funzioni diverse:
chiave pubblica: per
cifrare i messaggi (nota a
tutti)
chiave privata: per
decifrare i messaggi (nota
solo al proprietario)
Messaggio:
Ciao come stai
Testo
La conoscenza di una chiave non permette di calcolare
l’altra
Il destinatario del messaggio invia (o pubblica) la chiave
pubblica al mittente
Il mittente cifra il messaggio con la chiave pubblica ricevuta
e invia il messaggio al destinatario
Il destinatario utilizza la chiave privata per decifrare il
messaggio codificato
Testo criptato
Messaggio criptato:
4432 4126 3212
Chiave privata
Testo
Tecnica basata sull’utilizzo della
crittografia a chiave pubblica per la
firma di documenti
Utilizzando la chiave privata viene
creata una firma non duplicabile da
associare al documento
Firma:
cifratura di parte del documento
con chiave privata
Chiave pubblica
Firma digitale
Crittografia a chiave pubblica
La corrispondente chiave pubblica
permette di decifrare la firma creata
Messaggio
decriptato:
Ciao come stai
Solo chi ha la chiave privata può decifrare il
messaggio
Firma digitale
La firma digitale viene equiparata
nell’ordinamento giuridico italiano alla
firma autografa
Caratteristiche
Autenticità
Integrità
Non
ripudiabilità