68
IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Embed Size (px)

Citation preview

Page 1: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

IDUL 2009

RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Page 2: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Decidere orario per esercitazioni (con Doodle)

Inizio: settimana del 12 per Bucchiarone; del 19 per Cavulli

Esercitazione per i filosofi (HTML + XML + Semantic Web; docente: Antonio Bucchiarone) http://www.doodle.com/d8u2wxtv4t8ayc93

Le prime 3 esercitazioni saranno su HTML (il linguaggio di marcatura delle pagine web); si consiglia a qualsiasi studente interessato di frequentarle.

Esercitazioni per studenti di Beni Culturali (Data Base; docente: Fabio Cavulli)http://www.doodle.com/552ng7ssvezvgf8z

Page 3: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

CONCETTI FONDAMENTALI INTRODOTTI IN QUESTA LEZIONE

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

Page 4: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Informazione su computer

Un computer deve: Fare input/output dell’informazione

Usando i dispositivi di input/output Memorizzare l’informazione

Usando la memoria principale/secondaria Elaborare l’informazione

Usando il processore

Page 5: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Informazione su computer

Mondo esterno

informazione rappresentazione digitale

codifica

decodifica

Computer: memorizzazione, elaborazione

Page 6: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

PROBLEMA DELLA RAPPRESENTAZIONE DELL’INFORMAZIONE 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

Page 7: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

RAPPRESENTAZIONE ANALOGICA E DISCRETA

Rappresentazione ANALOGICA: una serie di distinzioni CONTINUE, prive in linea di principio di intervalli minimi. Immagini, suoni, numeri reali (3,14159265…)

Rappresentazione DISCRETA: basata sulla combinazione di elementi minimi chiaramente distinti. Linguaggio umano (unità minime = morfemi, fonemi)

Rappresentazione DIGITALE: una rappresentazione discreta codificata tramite numeri

Page 8: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Misure analogiche e digitali

Page 9: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

INFORMAZIONE IN FORMA ANALOGICA

Page 10: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

INFORMAZIONE IN FORMA DISCRETA

Page 11: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Esempio: Il codice MORSE

-- --- ·-· ··· · (space) -·-· --- -·· ·

M O R S E (space) C O D E

Page 12: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

MORSE

Un codice TERNARIO (-, ., spazio) Codici per i caratteri scelti in modo che i

caratteri più frequenti abbiano codici più brevi

Page 13: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

UN ESEMPIO DI CODICE DISCRETO VISIVO

Page 14: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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 Il repertorio di fonemi di un linguaggio

(l’ insieme dei suoni che possono codificare differenze di significato)

Page 15: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

UN CODICE FONDAMENTALE: Il DNA

Page 16: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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

Page 17: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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) 7 + 4 = 11

Differenza fondamentale: il codice decimale è un codice POSIZIONALE 7 = 7x100 75 = 7x101 + 5 x100

“Sette decine + cinque unità”

I codici posizionali rendono le operazioni aritmetiche molto piu’ semplici

Page 18: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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

Page 19: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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 L’invenzione dei tubi catodici

prima, e dei transistor poi, ci ha fornito gli strumenti per rappresentare due stati di carica elettrica

Page 20: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Rappresentazione digitale = rappresentazione binaria

L’entità minima di informazione che possiamo trovare all’interno 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)

Page 21: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

NUMERO MAGGIORE DI STATI

Per poter rappresentare un numero maggiore di informazione si usano sequenze di bit

Per esempio, per rappresentare quattro informazioni diverse possiamo utilizzare due bit che ci permettono di ottenere quattro (2 x 2) configurazioni distinte:

00 01 10 11

Page 22: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

QUATTRO STATI DIVERSI

Esempio: un esame può avere quattro possibili esiti: ottimo, discreto, sufficiente, insufficiente

Codifica (due bit): ottimo con 00 discreto con 01 sufficiente con 10 insufficiente con 11

Page 23: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

OTTO STATI

Esempio: otto colori: nero, rosso, blu, giallo, verde, viola, grigio, arancione

Codifico (tre bit): nero con 000 rosso con 001 blu con 010 giallo con 011 verde con 100 viola con 101 grigio con 110 arancione con 111

Page 24: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

I numeri in rappresentazione binaria

Il principio e’ lo stesso del codice decimale, ma con due soli simboli

70 = 7x101 + 0 x100 = 64 + 4 + 2 = 1 x26 + 0x25+ 0x24+ 0x23+ 1x22+ 1x21+ 0x20 = 1000110

178 = 1x102 + 7x101 + 8x100 = 128 + 32 + 8 + 2 = 1x27+ 0x26 + 1x25+ 0x24+ 1x23+ 0x22+ 1x21+ 0x20 = 10101010

Page 25: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

BYTE

Esiste una particolare aggregazione di bit che è costituita da 8 bit (28 = 256 informazioni) e prende il nome di byte

Di solito si usano i multipli del byte

Kilo KB 210 (~ un migliaio, 1024) byte

Mega MB 220 (~ un milione, 1KB x 1024) byte

Giga GB 230 (~ un milliardo, 1MB x 1024) byte

Tera TB 240 (~ mille miliardi, 1GB x 1024) byte

Page 26: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

RAPPRESENTAZIONE DI NUMERI INTERI SU COMPUTER

Tipicamente 4 byte (= 32 bit) oppure 8 byte (= 64 bit)

Page 27: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

RAPPRESENTAZIONE DIGITALE DI ALTRI TIPI DI INFORMAZIONE

Per molti anni, l’unico tipo di informazione rappresentata sui computer informazione di tipo numerico

Ma lo stesso sistema può venire usato per codificare immagini, suoni, e testi

Page 28: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Codifica delle immagini

Suddividiamo l’immagine mediante una griglia formatada righe orizzontali e verticali a distanza costante

Page 29: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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

Page 30: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Codifica delle immagini

0 0 0 1 0 0 0 0 0 0

0 0 1 1 1 0 0 0 0 0

0 0 1 1 1 1 1 0 0 0

0 0 0 0 0 0 0 0 0 0

Page 31: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Codifica delle immagini

0 0 0 1 0 0 0 0 0 0

0 0 1 1 1 0 0 0 0 0

0 0 1 1 1 1 1 0 0 0

0 0 0 0 0 0 0 0 0 0

Poiché una sequenza di bit è lineare, è necessario definireconvenzioni per ordinare la griglia dei pixel in una sequenza. Assumiamo che i pixel siano ordinati dal bassoverso l’alto e da sinistra verso destra0000000000 0011111000 0011100000 0001000000

Page 32: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Codifica delle immagini

Non sempre il cortorno della figura coincide con le linee della griglia. Quella che si ottiene nella codifica è un’approssimazione della figura originaria

Se riconvertiamo la sequenza di stringhe0000000000 0011111000 0011100000 0001000000in immagine otteniamo

Page 33: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Codifica delle immagini

La rappresentazione sarà più fedele all’aumentaredel numero di pixel, ossia al diminuire delle dimensioni dei quadratini della griglia in cui è suddivisa l’immagine

Page 34: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

EFFETTO DELLA RISOLUZIONE

Page 35: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

PIU’ DI DUE COLORI

Se l’immagine è solo in bianco e nero (senza grigi), basterà usare un ‘1’ per i pixel neri, e uno ‘0’ per i pixel bianchi

Se l’immagine ha più di due colori, si faranno corrispondere a gruppi diversi di ‘0’ e ‘1’ sfumature diverse di colore (o di grigio)

Page 36: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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: 00101101

Page 37: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

I SUONI

Page 38: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

CONVERSIONE IN DIGITALE VIA CAMPIONAMENTO

Page 39: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

SUONO: DALLA RAPPRESENTAZIONE ANALOGICA ALLA RAPPRESENTAZIONE DIGITALE

Page 40: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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 è un’immagine)… e codificare la colonna sonora.

Non stupisce che per codificare un breve filmato servano moltissimi bit!

Page 41: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

La codifica di livello 0

Il testo come sequenza di caratteri

dietro le quinte…

Page 42: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

La codifica di livello 0caratteri e numeri

A carattere

65 codice (decimale) del carattere

0 1 0 0 0 0 0 1 codifica binaria del codice del carattere

I computer elaborano internamente solo sequenze di bit (0,1)

MAESTRO CILIEGIA

Page 43: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Numeri e numeri

Sistema binario vengono usate due cifre (0 e 1) per rappresentare un numero problema: i numeri binari sono estremamente lunghi

Sistema esadecimale ogni numero è rappresentato con 16 cifre (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) i numeri sono più corti di quelli binari e di quelli decimali. estrema facilità di conversione tra binario ed esadecimale:

in una sequenza binaria, ogni stringa di 4 bit corrisponde ad una cifra esadecimale.

0110 1111 0110 numero binario (6) (15) (6) 6     F     6 numero esadecimale

numero

X

10

A

1010

rappresentazione di un numero

Page 44: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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, AGKpqt5. Altri effetti: AGKpqt, AGKpqt, AGKpqt, AGKpqt,

AGKpqt, AGKpqt

Page 45: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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)

Page 46: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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:

43456 = (4)(34)(56) (4)(3)(4)(56)

Page 47: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Il codice ASCII(American Standard Code for Information Interchange)

Primo standard per l’assegnazione 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 = 27 punti di codice = 128 caratteri rappresentati

Sufficiente per rappresentare l’inglese mancano i caratteri accentati, umlaut, ecc. per rappresentare

altri alfabeti occidentali

Page 48: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

ASCII Standarddecimale ed esadecimale

Page 49: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

ASCII: Caratteri stampabili e di controllo I primi 32 caratteri dell’ASCII

sono caratteri funzionali (non necessariamente stampabili)

Cf. www.cs.tut.fi/~jkorpela/chars/c0.html

Page 50: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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 nell’ASCII si trova 64

posizioni indietro rispetto al codice della lettera maiuscola premuta insieme con Ctrl. Esempio: “G” = ASCII 71 “Control-G” = 71-64 = 7 = codice BELL (rappresentato dal suono beep del

computer)

Cf.http://it.wikipedia.org/wiki/Carattere_di_controllo ASCII è completato da uno standard per la interpretazione dei caratteri di

controllo, (ANSI X3; per approfondimenti vedi http://www.inwap.com/pdp10/ansicode.txt )

Page 51: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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

Page 52: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

File binari e file ASCII I file possono essere di tipo ASCII 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)

Page 53: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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’email può solo trasmettere file ascii

Con allegati (“attachment”) binari, necessità di ricodifica in ASCII

crescita di dimensioni attorno al 40%

Page 54: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Il set di caratteri ISO-Latin-1

ASCII Standard

Caratteri di controllo

0-32

128-159

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

Page 55: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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.

Page 56: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

La famiglia di caratteri ISO-8859

ISO-Latin-1

Page 57: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Limiti di ISO-8859

I set di ISO-8859 sono tutti reciprocamente incompatibili. Punto di codice 232

ISO-8859-1 (Latin-1) = “è” ISO-8859-5 (Cyrillic) = “ш”

Coem usare più lingue nello stesso documento?

ISO-8859 non copre lingue come giapponese, cinese, ecc. che non usano sistemi alfabetici, ma ideografici

Page 58: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

The Universal Character SetUNICODE (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/standard/WhatIsUnicode.html http://www.unicode.org/standard/translations/italian.html

Page 59: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

The Universal Character SetUNICODE (ISO-10646) Circa 100.000 caratteri grafici rappresentati (Unicode v. 5.1.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…)

Page 60: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

The Universal Character SetUNICODE (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.

Page 61: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

UNICODE: composizione dei caratteri

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)

Page 62: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Codifica dei caratteri

Vari tipi di codifica: UCS-2 (tutti i caratteri a 2 byte) UCS-4 (tutti i caratteri a 4 byte) UTF-8 (caratteri 0-127 con 1 byte, oltre 2, 3 o

4 byte) UTF-16, ecc.

Codifica più comune: UTF-8

Page 63: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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.

Page 64: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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 http://www.unicode.org/notes/tn26/ per una discussione del perché)

Page 65: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Come trovo il mio carattere? Indice alfabetico dei

caratteri:http://www.unicode.org/charts/charindex.html Oppure procedendo per sistema di scrittura (script)

http://www.unicode.org/charts/ Alcune spiegazioni generali su:

http://unicode.org/standard/where/ Problemi maggiori per i simboli

Page 66: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

Problema della resa grafica:

Ab bkйd و٦من

ds kjdks kdsk

sybco oθδjpjp

Unicode ISO-Latin-1

1010011101

1000100100

1001010010

0110010100

Ab bkƛd ƛƛƛƛ

ds kjdks kdsk

sybco oƛƛjpjp

1010011101

1000100100

1001010010

0110010100

Page 67: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

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 dell’informazione

Compressione: JPEG, MP3

Page 68: IDUL 2009 RAPPRESENTAZIONE DELLE INFORMAZIONI IN FORMA DIGITALE

RIFERIMENTI / SITI Tomasi, capitoli 1.1 e 6 Lucidi di Ciotti online:

Online: http://www.mediamente.rai.it/mediamentetv/learning/ed_multimediale/lezioni/01/