Rappresentazione dei Dati
Transcript
Rappresentazione dei Dati
Abilità Informatiche A.A. 2010/2011 Lezione 3: Rappresentazione dei Dati Facoltà di Lingue e Letterature Straniere Ricapitolando I computer sanno eseguire solo un numero molto ridotto di operazioni su simboli di un dato linguaggio (i numeri binari, che vedremo). Per funzionare i computer hanno bisogno di: Un programma che li istruisca su cosa fare Dati sui quali agire Abbiamo quindi bisogno di tradurre sia i programmi che i dati in un linguaggio “comprensibile” al computer. Parleremo di rappresentazione e codifica dell‟informazione. 2 Gestione delle informazioni Nelle attività umane, le informazioni vengono gestite (registrate e scambiate) in forme diverse: idee informali linguaggio naturale (scritto o parlato, formale o colloquiale, in una lingua o in un‟altra) disegni, grafici, schemi numeri e codici e su vari supporti memoria umana, carta, dispositivi elettronici Nelle attività standardizzate dei sistemi informativi complessi, sono state introdotte col tempo forme di organizzazione e codifica delle informazioni Ad esempio, nei servizi anagrafici si è iniziato con registrazioni discorsive e poi nome e cognome estremi anagrafici codice fiscale 3 Informazioni e dati Nei sistemi informatici (e non solo), le informazioni vengono rappresentate in modo essenziale, spartano: attraverso i dati Dal Vocabolario della lingua italiana: informazione: notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere. dato: ciò che è immediatamente presente alla conoscenza, prima di ogni elaborazione; (in informatica) elementi di informazione costituiti da simboli che debbono essere elaborati. 4 Dati e informazioni I dati hanno bisogno di essere interpretati. Esempio „Mario‟ ‟275‟ su un foglio di carta sono due dati. Se il foglio di carta viene fornito in risposta alla domanda “A chi mi devo rivolgere per il problema X; qual è il suo interno?”, allora i dati possono essere interpretati per fornire informazione e arricchire la conoscenza. Perché i dati? 5 La rappresentazione precisa di forme più ricche di informazione e conoscenza è difficile. I dati costituiscono spesso una risorsa strategica, perché più stabili nel tempo di altre componenti (processi, tecnologie, ruoli umani). Codifica dell’informazione Per rappresentare l‟informazione in modo non fruibile dal computer abbiamo bisogno di codici che la possano esprimere in modo semplice, sintetico e non ambiguo. Un codice (o linguaggio) su basa su: 6 Un alfabeto di simboli Una sintassi con cui comporre tali simboli in sequenze Una semantica da associare ai simboli e alle sequenze Informazione e supporto 7 L‟informazione è “portata da”, o “trasmessa su”, o “contenuta in qualcosa”; questo qualcosa non è l‟informazione stessa, ma il supporto. Ogni supporto ha le sue caratteristiche in quanto mezzo su cui può essere “scritta” dell‟informazione. Alcuni supporti sono adatti alla trasmissione ma non alla memorizzazione dell‟informazione (aria, cavi,..) e viceversa (CD, hard disc,..). Stessa informazione, diversi supporti 8 7 6 cinque 5 4 3 2 1 0 8 Stesso supporto, diversa informazione inglese italiano italiano fare spagnolo italiano 9 tariffa, prezzo. inglese to make, to do, to build. italiano burro asino, cavalletto, somaro. spagnolo mantequilla, manteca. Entità logiche e fisiche Distinguere informazione e supporto fisico è distinguere tra entità logiche ed entità fisiche. L‟informazione richiede un supporto fisico, ma non coincide con esso. L‟informazione è una entità extra-fisica, non interpretabile in termini di materia-energia e sottoposta alle leggi della fisica solo perché basata su un supporto fisico. L’informazione si può creare e distruggere. 10 Quando un sistema fisico supporta informazione? Si ottiene informazione quando, dato un insieme di alternative possibili, la lettura del supporto ne elimina alcune e ne seleziona altre. Condizione necessaria perché un supporto possa portare informazione è che possa assumere configurazioni differenti, a ognuna delle quali venga associata una differente entità di informazione. 11 Prima condizione sul supporto Un supporto che possa presentarsi sempre e comunque in un unico modo non può portare alcuna informazione. “Il supporto fisico deve consentire di distinguere tra le varie configurazioni attraverso determinate differenze.” Il caso più semplice è quello in cui le configurazioni del supporto sono due. 12 Configurazioni e codici A ogni configurazione del supporto deve essere associata una entità di informazione. A esempio: interruttore premuto = “luce accesa” interruttore rilasciato = “luce spenta”. Per interpretare le differenti configurazioni del supporto in termini di informazione è necessario conoscere il codice, ovvero la “regola” che ad ogni configurazione (ammessa) del supporto associa una entità di informazione. La definizione di un codice comporta che sia identificato in modo non ambiguo l‟insieme delle possibili configurazioni del supporto e delle possibili entità di informazione cui ci si vuole riferire. Ad uno stesso supporto fisico possono essere associati più codici. 13 Possibili rappresentazioni dei numeri Unaria: una barretta per unita‟ Ad es: IIIIIIIIIIIIII rappresenta 15!!! Numeri Romani con multipli di 5: Alfabeto: I(uno) V(5) X(10) L(50) C(100) D(500) M(1000) Si minimizza numero di simboli ad es: I II III IV V …. XL (40) …. MCCLXXI (1271)…. Problema con numeri > 4000: Ad es. MMMMMMMMMMMM… Difficile eseguire le operazioni! 14 Il codice binario (1) Il bit è il supporto più semplice. Possiamo immaginare il bit come un interruttore che ha soltanto due posizioni (configurazioni): 0 15 1 Il codice binario (2) 16 Definire un codice binario significa associare ad ogni configurazione di bit una certa entità di informazione. Anche se tipicamente le entità di informazione associate sono numeri decimali, è possibile associare qualsiasi insieme di oggetti all‟insieme di configurazioni. La codifica binaria più semplice è quella ad 1 bit, ovvero: binario decimale 0 1 0 1 Il codice binario (3) Si possono definire codifiche costituite da un numero n arbitrario di bit. Ad esempio: Codifica a 2 bit (4 configurazioni) bin 00 01 10 11 17 Codifica a 3 bit (8 configurazioni) bin dec 000 001 010 011 100 101 110 111 0 1 2 3 4 5 6 7 dec 0 1 2 3 Il codice binario (4) 18 Dato una parola di n bit, il numero delle possibili configurazioni è 2n. Ad esempio, nella codifica a 3 bit vi sono 23 = 8 configurazioni. Il codice binario è detto posizionale, in quanto ogni bit assume valore più o meno significativo a seconda della sua posizione. Tipicamente, più i bit sono posizionati verso sinistra, maggiore è il loro valore. La traduzione da binario a decimale si effettua moltiplicando il valore 2k per ogni bit (dove k è la posizione del bit all‟interno della codifica, partendo da destra) e sommando tutti i valori ottenuti. Notazione posizionale in base 10 La rappresentazione di un numero intero in base 10 è una sequenza di cifre scelte fra 0123456789 es: 23, 118, 4 Il valore di una rappresentazione è dato da 19 23 = 2*101 + 3 * 100 = 20 + 3 118 = 1*102 + 1*101 + 8 * 100 = 100 + 10 + 8 Notazione posizionale in base 10: limite nella rappresentazione Il massimo numero rappresentabile con n cifre è 99….9 (n volte 9, la cifra che vale di più), pari a 10n-1 20 es: su tre cifre il massimo numero rappresentabile è 999 pari a 103-1 =1000-1 Notazione posizionale in base 2 La rappresentazione di un numero intero in base 2 è una sequenza di cifre scelte fra 01 es: 10, 110, 1 Il valore di una rappresentazione è dato da 21 10 = 1*21 + 0 *20 = 2 110 = 1*22 + 1*21 + 0 * 20 = 4 + 2 + 0 = 6 1 = 1 *20 = 1 Conversione da base 10 a base 2 Dato un numero N si calcola la sua rappresentazione in base 2 Conversione per divisione : si divide ripetutamente N per 2 i resti ottenuti nella divisioni presi nell’ordine inverso in cui sono stati calcolati formano la sua rappresentazione binaria 22 Conversione da base 10 a base 2 Come si converte N nella sua rappresentazione in base 2 usando il metodo della divisione Es : convertiamo il numero 13 13 / 2 = quoziente 6 e resto 1 6 / 2 = quoziente 3 e resto 0 3 / 2 = quoziente 1 e resto 1 1 / 2 = quoziente 0 e resto 1 La rappresentazione binaria di 13 è 1101 23 Conversione da base 10 a base 2 Si calcolano i resti delle divisioni per due 18 : 2 = 9 9 :2 = 4 4 :2 = 2 2 :2 = 1 1 :2 = 0 resto 0 resto 1 resto 0 resto 0 resto 1 10010 137 : 2 = 68 : 2 = 34 : 2 = 17 : 2 = 8 :2 = 4 :2 = 2 :2 = 1 :2 = 68 34 17 8 4 2 1 0 10001001 24 resto 1 resto 0 resto 0 resto 1 resto 0 resto 0 resto 0 resto 1 Da binario a decimale, un esercizio La base é b = 2. Si possono utilizzare solo le cifre 0 e 1. Esercizio Trasformare il numero binario 101001011 nella corrispondente rappresentazione decimale. 1010010112 = 1 x 28 + 0 x 27 + 1 x 26 + 0 x 25 + 0 x 24 + 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20 = = (256 + 64 + 8 + 2 + 1) = = 331 25 Un altro esempio Tradurre in decimale la seguente parola di 5 bit. Posizione: Bit più significativo (MSB) 4 3 2 1 0 10101 Bit meno significativo (LSB) 1×24 + 0×23 + 1×22 + 0×21 + 1×20 = 16 + 0 + 4 + 0 + 1 = 21 26 Notazione posizionale in base 2 Per la base due valgono proprietà analoghe a quelle viste per la base 10 Il massimo numero rappresentabile con N cifre è 11….1 (N volte 1, la cifra che vale di più), pari a 2N-1 es: su tre cifre il massimo numero rappresentabile è 111 pari a 23-1 = 8 - 1 = 7 Quindi se voglio rappresentare K diverse configurazioni (cioè 0 1 2 …K-1) mi servono almeno almeno x cifre dove 2x è la più piccola potenza di 2 che supera K es : se voglio 25 configurazioni diverse mi servono almeno 5 cifre perché 25=32 è la più piccola potenza di 2 maggiore di 25 27 Base 2: un esercizio Con n bit è possibile rappresentare 2n numeri naturali diversi, da 0 a 2n-1. 0 = 000 … 000 (n zeri) 2n-1 = 111 … 111 (n uni) Esercizio: quali sono i numeri naturali che si possono rappresentare con quattro bit ? Soluzione: Tutti i numeri naturali compresi tra 0 e 24 - 1 = 16 - 1= 15 28 Rappresentazione dei numeri all’interno di un computer Usa la notazione binaria Ogni numero viene rappresentato con un numero finito di cifre binarie (bit) Numeri di „tipo‟ diverso hanno rappresentazioni diverse Es. interi positivi, interi (pos. e neg.), razionali, reali, complessi Alcuni punti importanti: se uso 4 byte (32 bit) posso rappresentare solo i numeri positivi da 0 a 232-1=231, che sono molti ma non tutti! se moltiplico o sommo due numeri molto elevati posso ottenere un numero che non è rappresentabile Es. vediamo cosa succede in base 10 con solo 3 cifre : 500 + 636 = 1136 risultato 136 se uso solo 3 cifre non ho lo spazio fisico per scrivere la prima cifra (1) che viene „persa‟: Questo fenomeno viene chiamato overflow 29 Rappresentazione di interi all’interno di un computer Interi positivi e negativi: es. il tipo int in C usa di solito 4 byte ci sono diverse convenzioni di rappresentazione 30 Es: modulo e segno (MS) in cui il primo bit viene riservato al segno (1 negativo, 0 positivo) e gli altri 31 al modulo rimane il problema dell‟overflow Rappresentazione di un insieme finito di oggetti (un esempio) Vogliamo rappresentare i giorni della settimana: {Lu, Ma, Me, Gio, Ve, Sa, Do} usando sequenze 0 e 1 Questo significa costruire un „codice‟, cioè una tabella di corrispondenza che ad ogni giorno associa una opportuna sequenza In principio possiamo scegliere la corrispondenza in modo del tutto arbitrario…. 31 Rappresentazione di un insieme finito di oggetti (un esempio/1) Una possibile codifica binaria per i giorni della settimana Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica 0100010001 001 1100000 1 101010 111111 000001 Problema : la tabellina di corrispondenza fra codifiche tutte di lunghezza diversa 32 spreco di memoria devo capire come interpretare una sequenza di codifiche 110000011 = Me Gio Gio 110000011 = Gio Gio Do Gio Rappresentazione di un insieme finito di oggetti (un esempio/2) Di solito si usa un numero di bit uguale per tutti : il minimo indispensabile Per rappresentare 7 oggetti diversi servono almeno 3 bit (minima potenza di due che supera 7 è 8= 23) quindi: 33 000 Lunedì 001 Martedì 010 Mercoledì 011 Giovedì 100 Venerdì 101 Sabato 110 Domenica 111 non ammesso I giorni della settimana in binario Codifica ad 1 bit Codifica a 2 bit Codifica a 3 bit Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica 2 configurazioni 34 0 1 00 01 10 11 4 configurazioni 000 001 010 011 100 101 110 111 8 configurazioni Unità di misura ed ordini di grandezza Bit = unità di misura elementare.Vale 0 o 1. Byte = 8 bit KiloByte [KB ] = 210 Byte = 1024 Byte ~ 103 Byte MegaByte [MB ] = 220 Byte = 1 048 576 Byte ~ 106 Byte GigaByte [GB ] = 230 Byte ~ 109 Byte TeraByte [TB ] = 240 Byte ~ 1012 Byte PetaByte [PB ] = 250 Byte ~ 1015 Byte ExaByte [EB ] = 260 Byte ~ 1018 Byte 35 Unità di misura in base due bit 1 cifra binaria memorizza 0 oppure 1 byte 8 bit memorizza un carattere parola da 16 a 64 bit numeri e indirizzi di memoria Kilobyte (KB) 1024 byte circa mezza pagina di testo Megabyte (MB) 1024 KB un libro di 200 pagine Gigabyte (GB) 1024 MB alcuni volumi Terabyte (TB) 1024 GB una biblioteca Petabyte (PB) 1024 TB molte biblioteche 36 Codifica binaria dei caratteri Quanti sono gli oggetti compresi nell‟insieme? 26 lettere maiuscole + 26 minuscole 52 10 cifre Circa 30 segni d‟interpunzione Circa 30 caratteri di controllo (EOF, CR, LF, …) circa 120 oggetti complessivi k = log2120 = 7 Codice ASCII: utilizza 7 bit e quindi può rappresentare al massimo 27=128 caratteri 37 Con 8 bit (= byte) rappresento 256 caratteri (ASCII esteso) Si stanno diffondendo codici più estesi (e.g. UNICODE) per rappresentare anche i caratteri delle lingue orientali 0010 0011 0100 0101 0110 0111 1010 1011 1100 1101 010 spc ! “ # $ % & ‘ ( ) * + , - . / 011 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 100 @ A B C D E F G H I J K L M N O 101 P Q R S T U V W X Y Z [ \ ] ^ _ 110 ` a b c d e f g h i j k l m n o 111 p q r s t u v w x y z { | } ~ del 0000 0001 LSB Codice ASCII a 7 bit MSB Esempio: il carattere parentesi graffa “ { “ ha codice ASCII decimale 123, equivalente alla parola ASCII binaria di 7 bit: 111 1011 (si verifichi che la codifica di questo carattere è esatta). 38 Informazione in formato digitale il risultato? Una stringa di caratteri sarà rappresentata dal computer come una successione di gruppi di 8 bit (8 bit = 1 byte) O G G 01001111 39 01000111 01000111 I 01001001 P 00100000 01010000 I 01001001 O V 01001111 01010110 E 01000101 Il set di caratteri ISO-Latin-1 ISO-Latin-1 (ISO-8859-1 o ASCII esteso) unica estensione standard di ASCII 1 byte = 8 bit = 28 punti di codice = 256 caratteri rappresentati sufficiente per lingue europee occidentali (italiano, francese, ecc.) ASCII Standard Caratteri di controllo 0-32 128-159 40 La famiglia di caratteri ISO-8859 14 set di caratteri standardizzati da ISO (International Standard Organization) Codifica: 1 byte = 256 caratteri rappresentati da ciascun set Soprainsiemi dei caratteri ASCII Standard punti di codice 0 - 127 (parte comune) ASCII punti di codice 128 - 159 codici di controllo (non corrispondono a caratteri grafici) punti di codice 160 - 255 (parte variabile) caratteri aggiuntivi per greco, cirillico, lingue slave, arabo, ebraico, ecc. I set di ISO-8859 sono tutti reciprocamente incompatibili Punto di codice 232 ISO-8859-1 (Latin-1) = “è” ISO-8859-5 (Cyrillic) = “ш” ISO-8859 non copre lingue come giapponese, cinese, ecc. 41 La famiglia di caratteri ISO-8859 ISO-Latin-1 42 The Universal Character Set UNICODE (ISO-10646) Standard internazionale che si prefigge di rappresentare qualsiasi tipo di carattere appartenente ai sistemi grafici esistenti Sistemi di scrittura di tutte le lingue europee, asiatiche, africane, ecc., sia antiche che moderne. Sistemi di caratteri basati sui fonemi (p.es. italiano), sulle sillabe (p.es. Thai), su ideogrammi (p.es. Cinese), geroglifici, braille, ecc. Sistemi di simboli tecnici e scientifici (p.es. matematica, logica) Punteggiatura e segni diacritici (p.es. accenti) Risolve i problemi di incompatibilità dei sistemi ISO-8859 estende l‟insieme dei caratteri supportati permette la realizzazione di documenti multilingui http://www.unicode.org 43 The Universal Character Set UNICODE (ISO-10646) Circa 96.000 caratteri grafici rappresentati (Unicode v. 4.0) … ma i punti di codice disponibili sono più di 1 milione (4 byte)!! I primi 65536 caratteri (216) costituiscono il Basic Multilingual Plane (BMP), primo di 17 “piani” in cui è diviso UNICODE. Nel BMP, 6500 punti di codice sono riservati per usi privati (loghi, trademarks…) 44 The Universal Character Set UNICODE (ISO-10646) I punti di codice sono rappresentati con “U+numero esadecimale”, ed hanno un nome standard: “A” U+0041 = ”Latin Capital Letter A” (decimale 65) “ω” = U+03C9 = ”Greek Letter Omega” I primi 256 caratteri sono identici al set di caratteri Latin-1, a sua volta un soprainsieme dell' ASCII. 45 UNICODE: composizione dei caratteri 46 Caratteri complessi (p.es. “u” con umlaut) possono essere rappresentati in due modi: Come elementi precostituiti (codice U+00FC, ”ü”) Come elementi composti, formati da un carattere di base quale ”u” (U+0075) ed uno o più caratteri che non introducono spaziatura (”non spacing”), che vengono quindi sovrascritti al precedente, in questo caso ”¨” (U+0308) Problema dell‟ordinamento alfabetico (come decomporre caratteri complessi) Blocchi di codice I vari alfabeti sono divisi in gruppi detti “blocchi di codice” (code blocks) Si è tuttavia cercato di non duplicare i caratteri di lingue diverse. Non esiste p.es. una “A” italiana, una “A” norvegese. Anche le migliaia di ideogrammi comuni alla scrittura cinese, giapponese e coreana (che discendono tutti da una scrittura comune) sono unificati. 47 The Universal Character Set UNICODE (ISO-10646) 48 Campionamento e quantizzazione Gli elaboratori elettronici hanno natura discreta, ovvero ogni grandezza in gioco può essere rappresentata soltanto da un numero finito di elementi. Per essere elaborati da un calcolatore, segnali intrinsecamente continui quali suoni, immagini, video ecc., devono essere discretizzati (digitalizzati) attraverso operazioni di campionamento e quantizzazione. 49 Campionamento ampiezza segnale continuo t tempo ampiezza segnale campionato tempo (discreto) Il segnale continuo viene campionato ad intervalli di tempo regolari t (t = intervallo di campionamento). Il segnale risultante è un insieme finito di punti equidistanti nel tempo. Tuttavia le ampiezze devono essere ancora approssimate ad intervalli discreti, ovvero quantizzate. Si noti che campionamento e quantizzazione comportano una perdita di informazione. 50 Quantizzazione Ampiezza (discreta e codificata) 111 110 segnale quantizzato 101 Codifica a 3 bit 100 011 010 001 000 Tempo (discreto) La quantizzazione suddivide l‟ampiezza in n intervalli uguali che vengono poi codificati in binario. Ogni valore di ampiezza del segnale campionato viene approssimato al più vicino valore discreto di ampiezza. Più valori (e quindi più bit) si utilizzano per suddividere le ampiezze, più il segnale risultante sarà preciso. 51 Le immagini digitali Le immagini digitali non hanno una struttura continua ma sono costituite da un numero finito di componenti monocromatiche (pixel) prodotte dal campionamento dell‟immagine reale. I pixel assumono un numero finito di tonalità definite dalla quantizzazione dell‟immagine campionata. 52 Codifica delle immagini 53 L‟immagine è suddivisa in punti (pixel) e ciascun punto è codificato con un numero che corrisponde A un particolare colore A un particolare tono di grigio nelle immagini b/n In genere si utilizza un numero di colori o di sfumature di grigio che sia potenza di 2 per rappresentare un‟immagine come sequenza di byte. Deve essere memorizzata anche la dimensione dell‟immagine e la risoluzione (dpi, “dot per inch”) Codifica di immagini Consideriamo un'immagine in bianco e nero, senza ombreggiature o livelli di chiaroscuro Suddividiamo l‟immagine mediante una griglia formata da righe orizzontali e verticali a distanza costante 54 Codifica di immagini Ogni quadratino derivante da tale suddivisione prende il nome di pixel (picture element) e può essere codificato in binario secondo la seguente convenzione: il simbolo “0” viene utilizzato per la codifica di un pixel corrispondente ad un quadratino bianco (in cui il bianco è predominante) il simbolo “1” viene utilizzato per la codifica di un pixel corrispondente ad un quadratino nero (in cui il nero è predominante) 55 Codifica di immagini Poiché una sequenza di bit è lineare, si deve definire una convenzione per ordinare i pixel della griglia Assumiamo che i pixel siano ordinati dal basso verso l'alto e da sinistra verso destra 022 123 024 025 026 027 028 015 116 117 018 019 020 021 0 8 1 9 110 111 112 013 014 0 1 0 2 0 3 04 0 5 0 6 0 7 La rappresentazione della figura è data dalla stringa binaria 0000000 0111100 0110000 0100000 56 Codifica di immagini 57 Non sempre il contorno della figura coincide con le linee della griglia: nella codifica si ottiene un‟approssimazione della figura originaria Se riconvertiamo la stringa 0000000011110001100000100000 in immagine otteniamo Codifica di immagini La rappresentazione dell'immagine - e quindi la sua qualità - sarà tanto più fedele all'originale quanto più aumenterà il numero di pixel; ovviamente se i pixel aumentano in numero, diminuiscono di dimensione. zz 58 Codifica di immagini 59 Codifica di immagini con toni di grigio Le immagini in bianco e nero hanno delle sfumature, o livelli di intensità di grigio Per codificare immagini con sfumature: si fissa un insieme di livelli (toni) di grigio, cui si assegna convenzionalmente una rappresentazione binaria per ogni pixel si stabilisce il livello medio di grigio e si memorizza la codifica corrispondente a tale livello Per memorizzare un pixel non è più sufficiente 1 bit. con 4 bit si possono rappresentare 24=16 livelli di grigio con 8 bit ne possiamo distinguere 28=256, con K bit ne possiamo distinguere 2K 60 Codifica di immagini a colori Analogamente possono essere codificate le immagini a colori: bisogna definire un insieme di sfumature di colore differenti (es. RGB = Red Green Blue), codificate mediante una opportuna sequenza di bit La rappresentazione di un'immagine mediante la codifica dei pixel viene chiamata codifica bitmap Il numero di byte richiesti dipende dalla risoluzione e dal numero di colori che ogni pixel può assumere Es: per distinguere 256 colori sono necessari 8 bit per la codifica di ciascun pixel la codifica di un'immagine formata da 640 480 pixel richiederà 2457600 bit (307200 byte) I monitor tipici utilizzano risoluzione: 640 480, 1024 768, 1280 1024 numero di colori per pixel: da 256 fino a 16 milioni Tecniche di compressione consentono di ridurre notevolmente lo spazio occupato dalle immagini 61 Codifica di filmati Un filmato non è altro che una successione di fotogrammi (frame) accompagnata da una colonna sonora! Immagini in movimento sono memorizzate come sequenze di fotogrammi In genere si tratta di sequenze compresse di immagini ad esempio si possono registrare solo le variazioni tra un fotogramma e l‟altro Esistono vari formati (comprendente il sonoro): mpeg (il più usato) avi (microsoft) quicktime (apple) mov E‟ possibile ritoccare i singoli fotogrammi 62 Codifica di suoni L‟onda sonora viene misurata (campionata) ad intervalli regolari Minore è l‟intervallo di campionamento e maggiore è la qualità del suono CD musicali: 44000 campionamenti al secondo, 16 bit per campione. Alcuni formati: .mov, .wav, .mpeg, .avi .midi usato per l‟elaborazione della musica al PC 63 La convergenza e i suoi strumenti 64 La convergenza e i suoi strumenti con la convergenza al digitale: tendono a unificarsi i supporti (memorie di massa, rete) tendono a unificarsi le tecnologie di produzione tendono a unificarsi le tecnologie di riproduzione tendono a unificarsi i mercati i dati passano con facilità da un dispositivo all‟altro 65