Archiviazione e trattamento dei dati

Archiviazione e trattamento
dei dati
La rappresentazione
Ogni oggetto all'interno del calcolatore è
rappresentato come una sequenza di bit
0111001010001111011101000...
I numeri
Quando scriviamo un numero quello che facciamo è
scrivere una stringa di caratteri (cifre) inclusi
nell'alfabeto {0,...,9}
Il valore di ogni cifra dipende dalla posizione
(l'ultimo carattere indica le unità, il penultimo le
decine, etc.)
I numeri (2)
Dato un numero c1c2c3c4...cn scritto in notazione
decimale (l'alfabeto è di 10 caratteri), il valore del
numero v è calcolabile tramite la formula:
n
v=∑ ci∗10
n−i
i=1
c1
c2
c3
c4
...
10n-1 10n-2 10n-3 10n-4 ...
cn
10n-n
La notazione binaria
I numeri mantenuti nel calcolatore sono
rappresentati usando un alfabeto di 2 simboli
(binario), {0,1}.
La formula che si usa per calcolare il valore di un
numero in notazione binaria è:
n
v=∑ ci∗2
i=1
n−i
La notazione binaria (2)
Es. Il numero binario 1010 vale:
n
v=∑ ci∗2 =1∗2
n−i
4−1
0∗2
4−2
1∗2
4−3
0∗2
i=1
Da cui segue:
v=1∗230∗221∗210∗2 0=82=10
4−4
Da base 10 a base 2
È possibile passare da base 10 a base 2 notando che:
n
v=∑ ci∗2 =c1∗2...∗2cn−2∗2cn−1∗2cn
i=1
n−i
Da base 10 a base 2 (2)
Es. Scrivi il numero 56 in rappresentazione binaria.
56
28
14
7
3
1
2
2
2
2
2
2
0
0
0
1
1
1
I numeri negativi
Posso aggiungere un bit per il segno:
●
0=positivo
●
1=negativo
In questo modo, devo implementare tutte le
operazioni aritmetiche (somma, sottrazione, etc.)
Il complemento a 2
Esiste un tipo di rappresentazione che permette di
usare la somma come sottrazione: il complemento
a 2.
Il primo bit della rappresentazione è dedicato al
segno.
Il complemento a 2 (2)
Per ottenere la rappresentazione in complemento a 2
di un numero negativo.
●
calcolo la rappresentazione binaria del
corrispondente numero positivo
●
complemento ciascun bit
●
aggiungo 1 al numero così ottenuto
Il complemento a 2 (3)
Es. Calcola la rappres. in complemento a 2 di -5(10)
utilizzando 5 bit.
5(10)= 00101(2)
Complemento bit
a bit
11010(2)
11011(2)
Sommo 1
Perché Studiare la Rappresentazione
Binaria?
Ci sono solamente 10 tipi di persone:
quelli che conoscono il binario e quelli
che non lo conoscono!
Il testo
Il testo è una sequenza di caratteri. Ad ogni carattere
è associato un codice numerico (un numero).
Il codice standard è il codice ASCII (American
Standard Code for Information Interchange).
Nello standard ASCII, ad ogni carattere è associato
1 byte.
Il testo
Le lingue mondiali richiedono più di 256 caratteri!
Allo scopo di permettere uno scambio consistente di
informazioni, è stato introdotto un nuovo
standard: l'UNICODE.
Ad ogni carattere è associato un numero di 16bit
L'audio
Il suono è un'onda
1,5
1
0,5
0
-0,5
-1
-1,5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
L'audio
Non posso rappresentare esattamente l'onda, quindi
il computer si limita ad approssimarla,
campionandola.
1,5
1
0,5
0
-0,5
-1
-1,5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Il campionamento
Misura la “forza” del suono 1 volta ogni istante di
tempo e assegna a questa informazione un valore
numerico.
Nei CD musicali, la frequenza di campionamento è
44100 Hz e, per ogni campionamento, utilizzano
16bit.
Il campionamento (2)
Es.
Quanti Mb occupano 5 minuti di musica campionati
con 8bit ad una frequenza di 22050 Hz?
(5*60) * 22050 * 8 / (8*1024*1024) = 6,3Mb
Secondi di
campionamento
Fattore di conversione
Frequenza di
da bit a Mb
campionamento
Rappresentazione del Colore
Lo standard RGB “scompone” il colore nelle sue
componenti di rosso, verde e blu e ad ogni
componente associa 8 bit.
●
È possibile pensare ad una componente ulteriore per la
trasparenza.
Le immagini
Esistono due tipologie di rappresentazione delle
immagini:
●
Raster scan (bitmap)
●
Vettoriali
Le immagini raster scan
Le immagini raster scan sono sequenze di punti,
detti pixel, a cui è associato un colore.
Le immagini raster scan (2)
Lo spazio che occupano non dipende dalla complessità
della figura rappresentata, ma dal numero di pixel che
compongono l'immagine stessa.
Se ingrandisco troppo un'immagine raster scan ottengo
un'immagine sgranata.
Le immagini raster scan (3)
Es.
Quanti Mb occupa un'immagine di 1024x768
pixel con la gestione della trasparenza?
1024*768 *
Dimensione
dell'immagine
8*4 / (8*1024*1024) = 3 Mb
Byte occupati
da ogni pixel
Fattore di conversione
da bit a Mb
Le immagini vettoriali
Le immagini sono la composizione di “semplici” figure
geometriche (es. cerchi, rettangoli, etc.)
Le immagini vettoriali (2)
È possibile ingrandire un'immagine a piacere senza
“degradare” la sua qualità
Immagini complesse richiedono una grande quantità di
calcolo e di memoria
La compressione
Esistono 2 tecniche di compressione:
●
●
Lossy: con perdita di informazione (MP3, JPG,
DivX, etc.)
Lossless: senza perdita di informazione (ZIP,
RAR, etc.)