La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

IDUL 2013 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE.

Presentazioni simili


Presentazione sul tema: "IDUL 2013 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE."— Transcript della presentazione:

1 IDUL 2013 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

2 MENU: Due tipi di informazione: in forma ANALOGICA (continua) in forma DISCRETA (o simbolica) Per rappresentare o comunicare informazione in forma discreta occorre un CODICE Esempi di codici: DNA, Morse Esempi di codici digitali: Per numeri Per testi Per immagini Per suoni

3 Computer come elaboratori di informazione Un computer deve: Fare input/output dellinformazione Usando i dispositivi di input/output Memorizzare linformazione Usando la memoria principale/secondaria Elaborare linformazione Usando il processore

4 Informazione su computer Mondo esterno informazione rappresentazione digitale codifica decodifica Computer: memorizzazione, elaborazione

5 PROBLEMA DELLA RAPPRESENTAZIONE DELLINFORMAZIONE SU COMPUTER SVILUPPARE CODICI CHE PERMETTANO DI RAPPRESENTARE INFORMAZIONE DI TIPO DISCRETO IN MODO EFFICIENTE SU UN SUPPORTO FISICO RAPPRESENTARE INFORMAZIONE DI TIPO ANALOGICO CON CODICI DISCRETI

6 RAPPRESENTAZIONE ANALOGICA E DISCRETA Rappresentazione ANALOGICA: una serie di distinzioni CONTINUE, prive in linea di principio di intervalli minimi. Immagini, suoni, numeri reali (3, …) Rappresentazione DISCRETA: basata sulla combinazione di elementi minimi chiaramente distinti. Rappresentazione DIGITALE: una rappresentazione discreta codificata tramite numeri

7 Misure analogiche e digitali

8 INFORMAZIONE IN FORMA ANALOGICA

9 INFORMAZIONE IN FORMA DISCRETA

10 Esempio: Il codice MORSE ·-· ··· · (space) -·-· --- -·· · M O R S E (space) C O D E

11 MORSE Un codice TERNARIO (-,., spazio) Codici per i caratteri scelti in modo che i caratteri più frequenti abbiano codici più brevi

12 UN ESEMPIO DI CODICE DISCRETO VISIVO

13 CODICI IN NATURA In realta, i codici sono apparsi ben prima degli esseri umani. In natura si trovano molti esempi di codici, i piu famosi dei quali sono Il DNA (4 simboli) Il repertorio di fonemi di un linguaggio (l insieme dei suoni che possono codificare differenze di significato)

14 UN CODICE FONDAMENTALE: Il DNA

15 CODICI PER NUMERI Nel caso dei numeri, la necessita di sviluppare un codice limitato non e motivata solo da facilita di memorizzazione, ma anche dalla necessita di usarli per MANIPOLAZIONI SIMBOLICHE

16 DUE CODICI PER I NUMERI Codice ROMANO: ( I, L, X, C, M,...) VII + IV = XI Codice DECIMALE: (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) = 11 Differenza fondamentale: il codice decimale è un codice POSIZIONALE 7 = 7x = 7x x10 0 Sette decine + cinque unità I codici posizionali rendono le operazioni aritmetiche molto piu semplici

17 Rappresentazione digitale dei numeri Il codice decimale, benche molto comodo, non e il codice MINIMO Per rappresentare informazione sui computer, codice minimo essenziale perché occorre poter rappresentare ogni simbolo diverso in modo FISICO (= con circuiti elettrici) Il minimo numero di simboli diversi necessari per rappresentare tutti i numeri e il codice BINARIO: 0, 1

18 Perché la rappresentazione binaria? I due simboli (0 e 1) possono essere rappresentati da: Due stati di polarizzazione di una sostanza magnetizzabile Due stati di carica elettrica di una sostanza Linvenzione dei tubi catodici prima, e dei transistor poi, ci ha fornito gli strumenti per rappresentare due stati di carica elettrica

19 Rappresentazione digitale = rappresentazione binaria Lentità minima di informazione che possiamo trovare allinterno di un elaboratore prende il nome di bit Binary digit – cifra binaria Un bit può assumere due valori Rappresentazione binaria Solo due simboli (0 e 1)

20 Numeri BINARI e numeri ESADECIMALI Sistema binario vengono usate due cifre (0 e 1) per rappresentare un numero problema: i numeri binari sono estremamente lunghi e difficili da ricordare Sistema esadecimale ogni numero è rappresentato con 16 cifre (0-9, A-F) i numeri sono più corti di quelli binari estrema facilità di conversione tra binario ed esadecimale in una sequenza binaria, ogni stringa di 4 bits corrisponde ad una cifra esadecimale numero binario (6) (15) (6) 6 F 6 numero esadecimale numero X 10 A 1010 rappresentazione di un numero

21 NUMERO MAGGIORE DI STATI Per poter rappresentare un numero maggiore di informazione si usano sequenze di bit «Al mondo esistono 10 categorie di persone: chi sa contare in binario e chi no» «10» in binario significa: 1 volta volte 2 0, dove 2 1 = = 1 Per quattro stati diversi: 00, 01, 10, 1

22 QUATTRO STATI DIVERSI Esempio: un esame può avere quattro possibili esiti: ottimo, discreto, sufficiente, insufficiente Codifica (due bit): ottimo con00 discreto con01 sufficiente con10 insufficiente con11

23 OTTO STATI Esempio: otto colori: nero, rosso, blu, giallo, verde, viola, grigio, arancione Codifico (tre bit): nero con000 rosso con001 blu con010 giallo con011 verde con100 viola con101 grigio con110 arancione con111

24 I numeri in rappresentazione binaria Il principio e lo stesso del codice decimale, ma con due soli simboli 70 = 7x x10 0 = = 1 x x x x x x x2 0 = = 1x x x10 0 = = 1x x x x x x x x2 0 =

25 BYTE Esiste una particolare aggregazione di bit che è costituita da 8 bit (2 8 = 256 informazioni) e prende il nome di byte Di solito per la capienza delle memorie si usano multipli del byte (KB, MB, GB, TB) Per le misure di trasmissione dati, si usano invece i multipli di bit at secondo (p.es Mbps, milioni di bit per secondo)

26 RAPPRESENTAZIONE DI NUMERI INTERI SU COMPUTER Tipicamente 4 byte (= 32 bit) oppure 8 byte (= 64 bit) Dire che un software è a 64 bit significa che rappresenta numeri usando 8 byte alla volta. Questo consente di rappresentare numeri più grandi (o decimali più precisi). Un S.O. a 64 bit può leggere e scrivere più celle di memoria: fino a (limite per ora puramente teorico)

27 RAPPRESENTAZIONE DIGITALE DI ALTRI TIPI DI INFORMAZIONE Per molti anni, lunico tipo di informazione rappresentata sui computer informazione di tipo numerico Ma lo stesso sistema può venire usato per codificare immagini, suoni, e testi

28 Codifica delle immagini Suddividiamo limmagine mediante una griglia formata da righe orizzontali e verticali a distanza costante

29 Codifica delle 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 in cui il bianco è predominante Il simbolo 1 viene utilizzato per la codifica di un pixel corrispondente ad un quadratino in cui il nero è predominante

30 Codifica delle immagini

31 Poiché una sequenza di bit è lineare, è necessario definire convenzioni per ordinare la griglia dei pixel in una sequenza. Assumiamo che i pixel siano ordinati dal basso verso lalto e da sinistra verso destra

32 Codifica delle immagini Non sempre il cortorno della figura coincide con le linee della griglia. Quella che si ottiene nella codifica è unapprossimazione della figura originaria Se riconvertiamo la sequenza di stringhe in immagine otteniamo

33 Codifica delle immagini La rappresentazione sarà più fedele allaumentare del numero di pixel, ossia al diminuire delle dimensioni dei quadratini della griglia in cui è suddivisa limmagine

34 EFFETTO DELLA RISOLUZIONE

35 PIU DI DUE COLORI Se limmagine è solo in bianco e nero (senza grigi), basterà usare un 1 per i pixel neri, e uno 0 per i pixel bianchi Se limmagine ha più di due colori, si faranno corrispondere a gruppi diversi di 0 e 1 sfumature diverse di colore (o di grigio)

36 RAPPRESENTARE COLORI Così, ad esempio, se si fa corrispondere a ogni pixel un byte (cioè 8 bit), potremo differenziare 256 colori Al posto della tabella di codifica dei caratteri avremo una tabella di codifica dei colori Ad es:

37 Digitalizzare le immagini La nostra immagine viene in questo modo fatta corrispondere a una larghissima matrice Ogni pixel dellimmagine viene codificato dal gruppo di 0 e 1 associato al suo colore dalla tabella di codifica dei colori utilizzata Per esempi di tabelle di colori, vedi:

38 I SUONI

39 CONVERSIONE IN DIGITALE VIA CAMPIONAMENTO

40 SUONO: DALLA RAPPRESENTAZIONE ANALOGICA ALLA RAPPRESENTAZIONE DIGITALE

41 Digitalizzare informazione multimediale E i filmati? Un filmato non è altro che una successione di fotogrammi (frame) accompagnata da una colonna sonora Basterà codificare, uno per uno, tutti i fotogrammi (sappiamo come fare: ogni fotogramma è unimmagine)… e codificare la colonna sonora. Non stupisce che per codificare un breve filmato servano moltissimi bit! Per full HD: 1920 × 1080 x x 24

42 Codifica digitale del testo Il testo come sequenza di caratteri Ciascun carattere alfanumerico, di punteggiatura o di controllo che compone il testo deve essere rappresentato nei termini di un codice binario Le avventure di Pinocchio Capitolo I Come andò che Maestro Ciliegia, falegname, trovò un pezzo di legno, che piangeva e rideva come un bambino. C'era una volta... - Un re! - diranno subito i miei piccoli lettori. - No, ragazzi, avete sbagliato. C'era una volta un pezzo di legno. Non era un legno di lusso, ma un semplice pezzo da catasta, di quelli che d'inverno si mettono nelle stufe e nei caminetti per accendere il fuoco e per riscaldare le stanze. Non so come andasse, ma il fatto gli è che un bel giorno questo pezzo di legno capitò nella bottega di un vecchio falegname, il quale aveva nome mastr'Antonio, se non che tutti lo chiamavano maestro

43 La codifica di livello 0 Il testo come sequenza di caratteri dietro le quinte…

44 La codifica di livello 0 caratteri e numeri A carattere 65 codice (decimale) del carattere codifica binaria del codice del carattere I computer elaborano internamente solo sequenze di bit (0,1) MAESTRO CILIEGIA

45 Rappresentare i caratteri Quali caratteri scegliere? un insieme di caratteri (es. A, a, !, à, §, ecc.) i caratteri sono entità astratte, da non confondersi con il modo in cui sono realizzati tipograficamente (glifi) Uno stesso carattere può variare nella resa grafica in varie dimensioni: 1. Serie (o font): AGKpqt, AGKpqt, AGKpqt, … 2. Peso: AGKpqt, AGKpqt 3. Inclinazione: AGKpqt, AGKpqt 4. Punti: AGKpqt, AGKpqt, AGKpqt, AGKpqt AGKpqt, 5. Altri effetti: AGKpqt, AGKpqt, AGKpqt, AGKpqt, AGKpqt

46 Come rappresentare i caratteri? Caratteristiche distintive e non distintive Differenza tra MAIUSCOLE e minuscole in tedesco Blau (nome) vs blau (agg.), in Windows: (Prova.txt, PROVA.TXT, prova.txt sono lo stesso file); non così in Unix/Linux. La stessa realizzazione grafica può corrispondere a caratteri diversi (es. A latina e A cirillica e A greca)

47 Come rappresentare i caratteri nel computer? Come creare la corrispondenza? (=il codice) una tabella che definisce una corrispondenza biunivoca (1-a- 1) tra un repertorio di caratteri e un insieme di numeri interi non negativi a ogni carattere è assegnato un codice numerico (punto di codice / code position) Come codificare il carattere? algoritmo che determina come i codici dei caratteri vadano rappresentati in sequenze di bit (byte). Il problema è reso non banale dalla necessità di separare i caratteri: = (4)(34)(56) (4)(3)(4)(56)

48 Il codice ASCII (American Standard Code for Information Interchange) Primo standard per lassegnazione di codici a caratteri (dal 1963) set di caratteri riconosciuto da tutti i computer conosciuto come ASCII Standard o ISO-646 Codifica 7 bit ciascun punto di codice è rappresentato con il numero binario corrispondente di 7 bit in realtà 1 byte = 8 bit di cui un bit non è usato per la codifica (bit di parità) 7 bit = 2 7 punti di codice = 128 caratteri rappresentati Sufficiente per rappresentare linglese mancano i caratteri accentati, umlaut, ecc. per rappresentare altri alfabeti occidentali

49 ASCII Standard decimale ed esadecimale

50 ASCII: Caratteri stampabili e di controllo I primi 32 caratteri dellASCII sono caratteri funzionali (non necessariamente stampabili) Cf.

51 Caratteri di controllo Si ottengono premendo una lettera mentre si tiene premuto il tasto Cntl. A volte Control viene scritto ^ o Ctrl- (Control-A = Ctrl-A = ^A) Compiono funzioni specifiche ai vari programmi. Corrispondono al carattere non stampabile che nellASCII si trova 64 posizioni indietro rispetto al codice della lettera maiuscola premuta insieme con Ctrl. Esempio: G = ASCII 71 Control-G = = 7 = codice BELL (rappresentato dal suono beep del computer) Cf. ASCII è completato da uno standard per la interpretazione dei caratteri di controllo, (ANSI X3; per approfondimenti vedi )

52 Caratteri di controllo: esempio del fine riga Può corrispondere a: Carriage Return, (CR, lo spostamento alla prima colonna, carattere 13, o Ctrl-M del ASCII), Line Feed, spostamento alla riga sottostante, senza cambiare colonna (LF, carattere n.10, Ctrl-J) Scelte differenti nei vari sistemi operativi: Windows/DOS: CR+LF (entrambi i caratteri necessari) Mac: solo CR (fino al System X, poi solo LF) Unix/Linux: solo LF

53 File binari e file ASCII I file possono essere di tipo ASCII (anche detti, con meno esattezza, file di testo) o di tipo binario. I primi contengono solo caratteri stampabili contenuti nel codice ASCII ristretto (dal 32 al 127), i secondi usano l'intero spazio dei valori possibili per il byte (256). Un file binario non può essere in genere visualizzato sullo schermo dai comandi di base del sistema operativo stesso (p.es. type) ma solo da programmi specifici per quel tipo di file binario (niente resa grafica standard)

54 File binari e file ASCII I file eseguibili (windows.exe,.com, …), le immagini (.jpg,.gif,.png,.tif, …) e tutti i file compressi (.zip,.gz, …) sono in genere in formato binario Il protocollo dell può solo trasmettere file ascii Con allegati (attachment) binari, necessità di ricodifica in ASCII Ne consegue: crescita di dimensioni attorno al 40%

55 Il set di caratteri ISO-Latin-1 ASCII Standard Caratteri di controllo ISO-Latin-1 (ISO o ASCII esteso) unica estensione standard di ASCII 1 byte = 8 bit = 2 8 punti di codice = 256 caratteri rappresentati sufficiente per lingue europee occidentali (italiano, francese, ecc.)

56 La famiglia di caratteri ISO 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 (parte comune) ASCII punti di codice codici di controllo (non corrispondono a caratteri grafici) punti di codice (parte variabile) caratteri aggiuntivi per greco, cirillico, lingue slave, arabo, ebraico, ecc.

57 La famiglia di caratteri ISO-8859 ISO-Latin-1

58 Limiti di ISO-8859 I set di ISO-8859 sono tutti reciprocamente incompatibili. Punto di codice 232 ISO (Latin-1) = è ISO (Cyrillic) = ш Come usare più lingue nello stesso documento? ISO-8859 non copre lingue come giapponese, cinese, ecc. che non usano sistemi alfabetici, ma ideografici

59 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 linsieme dei caratteri supportati permette la realizzazione di documenti multilingui

60 The Universal Character Set UNICODE (ISO-10646) Circa caratteri grafici rappresentati (Unicode v ) … ma i punti di codice disponibili sono più di 1 milione (4 byte)!! I primi caratteri (2 16 ) 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…)

61 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.

62 UNICODE: composizione dei caratteri C aratteri 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 dellordinamento alfabetico (come decomporre caratteri complessi)

63 Codifica dei caratteri Vari tipi di codifica: UCS-2 (tutti i caratteri a 2 byte) UCS-4 (tutti i caratteri a 4 byte) UTF-16, ecc. UTF-8 (caratteri con 1 byte, oltre 2, 3 o 4 byte) Codifica più comune: UTF-8: In questa codifica l'ultimo bit del byte dice al sistema se il carattere finisce (come in inglese) o se il byte successivo continua a specificare lo stesso carattere (p.es. in cinese).

64 Blocchi di codice I vari alfabeti sono divisi in gruppi detti blocchi di codice (code blocks) Tentativo di non duplicare i caratteri di lingue diverse. Non esiste p.es. una A italiana, una A norvegese.

65 Blocchi di codice (2) Vengono invece duplicati i caratteri omografi di sistemi di scrittura (storicamente) diversi (p.es. Greco, latino, cirillico) Al contrario, le migliaia di ideogrammi comuni alla scrittura cinese, giapponese e coreana (che discendono tutti da una scrittura comune) sono unificati (si veda per una discussione del perché)http://www.unicode.org/notes/tn26/

66 Come trovo il mio carattere? Oppure procedendo per sistema di scrittura (script) Alcune spiegazioni generali su: Indice alfabetico dei caratteri:http://www.unicode.org/charts/charindex.htm lhttp://www.unicode.org/charts/charindex.htm l Problemi maggiori per i simboli

67 Problema della resa grafica: Ab bkйd من٦و ds kjdks kdsk sybco oθδjpjp Unicode ISO-Latin Ab bk ƛ d ƛƛƛƛ ds kjdks kdsk sybco o ƛƛ jpjp

68 RIASSUNTO Due tipi di informazione: in forma ANALOGICA, in forma DISCRETA (o simbolica) Per rappresentare o comunicare informazione occorre un CODICE Codici digitali: Per numeri: binario Per testi: ASCII Per immagini Per suoni E possibile progettare dei codici piu o meno ottimali usando idee della teoria dellinformazione Compressione: JPEG, MP3

69 RIFERIMENTI / SITI Tomasi, capitoli 1.1 e 6 Lucidi di Ciotti online: Online: multimediale/lezioni/01/ multimediale/lezioni/01/


Scaricare ppt "IDUL 2013 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE."

Presentazioni simili


Annunci Google