Fondamenti di
Informatica
Prof. Fenza Giuseppe
Introduzione al Digitale [Sez: 2.3, 2.4, 2.5]
Rappresentazione di Grandezze
Analogiche
• Il corpo umano percepisce segnali analogici
• Le informazioni analogiche sono rappresentabili come onde.
• Ogni parte dell’onda che rappresenta una grandezza analogica trasporta informazioni
• percepiamo tutti gli infiniti valori intermedi Quando parliamo, il messaggio è
trasportato da onde sonore
Quando vediamo, il messaggio è trasportato da onde luminose
Informazione Analogica
• I fenomeni naturali sono analogici • Insieme continuo di valori
– dati due valori (es. A=4,2 e B=6,4) esiste sempre un valore C intermedio fra i due C = (A + B) / 2 = (4,2 + 6,4) / 2 = 5,3
Rappresentazione di Grandezze
Analogiche
• Il mutare di un fenomeno analogico è rappresentato
con l’equivalente mutamento dell’elemento che lo
rappresenta
– es mouse e cursore sul Desktop
• A similarità tra grandezze rappresentate
corrisponde similarità tra grandezze rappresentanti.
– La distanza tra due punti qualsiasi su un territorio è proporzionale a quella tra i punti della mappa.
• Dividendo in due una grandezza analogica, si
ottengono due grandezze analogiche più piccole
Informazione Digitale
• computer è Elaboratore Elettronico DIGITALE
– Cioè elabora informazioni in formato digitale
• DIGITALE concetto-chiave della società dell’informazione
– Quali sono le caratteristiche delle Informazioni Digitali? E in che rapporto sono con il mondo reale (analogico)?
– Com'è possibile trasformare un messaggio da analogico a digitale (e viceversa)?
• Rappresentazione digitale dell’informazione • Rappresentazione digitale dei dati multimediali
Informazione Digitale
• In Natura le informazioni sono raramente di tipo digitale
– Le grandezze digitali sono spesso state create dagli uomini:
• Alfabeto, Sistema monetario, …
• Insieme discreto (finito) di valori,
– monete di metallo: 1, 2, 5, 10, 20, 50 cent. e 1, 2 euro
• Poco sensibile alle interferenze.
– È più semplice identificare, senza commettere errore,
• uno tra un numero finito di valori
Rappresentazione di Grandezze Digitali
• La rappresentazione è ‘discreta’
• Dividendo un simbolo digitale non si ottengono due simboli digitali
– Tagliando a metà una moneta da 1 euro non si ottengono due monete più piccole dal valore di 50 centesimi l’unsa.
– Dividendo a metà la parola "cane" non si ottengono due parole ("ca“ e “ne”) che denotano "la metà di un cane".
Analogico/Digitale
Segnale analogico- come un onda (es. sonora, luminosa) che trasporta informazioni, massimi, minimi e tutti i valori intermedi
- i segnali analogici sono molto sensibili alle
interferenze
Segnale digitale
- assume solo due stati: acceso/spento, sì/no, vero/falso
- il segnale digitale è più facile da distinguere,
quindi risente meno delle interferenze
Grandezze analogiche e digitali:
orologio
• Analogico
– Mostra l’ora attraverso la posizione delle lancette
– Ogni lancetta si muove con continuità e indica uno qualsiasi degli infiniti punti sulla circonferenza del quadrante
• Digitale
– Mostra l’ora attraversi numeri
– Le cifre che compongono l’ora si muovono a scatti e indicano solo uno dei 1440 possibili minuti in un
Grandezze analogiche e digitali:
termometro
• Analogico
– Mostra la temperatura attraverso l’altezza della colonnina di mercurio
– Infiniti valori
• Digitale
– Mostra la temperatura attraverso dei numeri
Che cos’è il Digitale?
• Un esempio semplice: l’interruttore
• Due sole possibilità:
– Spento
– Acceso
• L’informazione sullo stato dell’interruttore corrisponde dunque alla scelta fra due sole alternative
• Possiamo rappresentarla attraverso 1 bit
Fondamenti di
Informatica
Prof. Fenza Giuseppe
Digitalizzazione di un Segnale Analogico
Il successo del digitale
• Quanto un supporto è “immune” al
rumore?
– Codifica analogica: ogni
configurazione è lecita dal punto di vista informazionale e quindi risulta
impossibile distinguere il rumore dal segnale.
– Codifica digitale: un valore binario è associato a un insieme di configurazioni valide quindi si può
• riconoscere il rumore che porta in configurazioni non lecite
• trascurare il rumore che non fa uscire il segnale dall’insieme associato alla stessa configurazione
Tensione (V)
00 binario
1 2 3 4 51 binario
Non
lecito
Digitalizzazione di un segnale analogico
• Il nostro è un mondo ANALOGICO
• Quello del computer è un mondo DIGITALE
• Tutti i dati (musica, film, foto, ecc.), per poter essere trattati da
un computer, devono essere TRASFORMATI
dal formato ANALOGICO a quello DIGITALE
• Questa operazione è detta DIGITALIZZAZIONE • Questo processo avviene in 2 fasi:
CAMPIONAMENTO QUANTIZZAZIONE
Da analogico a digitale:
1. il campionamento
• La grandezza varia nel tempo e non può essere rappresentata da un solo valore.
• I valori di riferimento
debbono essere rilevati in diversi istanti di tempo
(frequenza di
campionamento).
• La quantizzazione deve poi essere ripetuta per ogni
valore campionato.
Ampiezza della grandezza fisica
CAMPIONAMENTO
• Suddivisione del segnale in parti o intervalli discreti, tutti della stessa grandezza
– (Immagini) numero di punti (pixel) in un intervallo di spazio – (Suoni) numero di suoni in un intervallo di tempo
Informazione Digitale Binaria
• Nei computer, l’informazione digitale è presente nel suoformato più elementare (BINARIO)
– può assumere solo uno tra due stati, acceso e spento.
– È più semplice identificare uno tra due valori che non uno tra molti (teoricamente infiniti).
– Le interferenze influiscono ancora meno.
• La quantizzazione deve essere seguito dalla trasformazione del segnale digitale in binario
QUANTIZZAZIONE
• Misurazione del segnale di ogni sottointervallo
– Tale misurazione dà come risultato un unico valore, che rappresenta l'intero sotto intervallo.
• Inoltre, il numero dei valori differenti che può assumere tale misurazione è finito e fissato a priori (Livello di quantizzazione)
• Si passa così dall’analogico (gli infiniti valori del segnale continuo di ogni sotto intervallo) al digitale (un unico
Campionamento e
quantizzazione
Ampiezza della grandezza fisica Tempo Va lo ri r ap pr es en ta ti viCampionamento e quantizzazione
T1 T2 T3 T4 T5 T6 T7 t1 t2 t3 t4 t5 t6 t7 A0 A1 A2 A3 Ampiezza TempoRicostruzione
T1 T2 T3 T4 T5 T6 T7 t1 t2 t3 t4 t5 t6 t7 A0 A1 A2 A3 a0 a1 a2 a3 Ampiezza Tempo Andamento originario della grandezza Andamento della grandezza ricostruito dai valori campionatiQuantizzazione su più livelli
T1 T2 T3 T4 T5 T6 T7 t1 t2 t3 t4 t5 t6 t7 Ampiezza Tempo a0 a1 a2 a3 a4 a5 a6 a7 A0 A2 A4 A6 A1 A3 A5 A7 Andamento originario della grandezzaAndamento della grandezza ricostruito dai valori campionati con quattro livelli di quantizzazione
Andamento della grandezza ricostruito dai valori campionati con otto
Errore di Quantizzazione
• La digitalizzazione è un processo che introduce
inevitabilmente errori di rappresentazione del segnale analogico originale
• In particolare, la quantizzazione introduce due errori di approssimazione:
– Approssimazione di tutti i valori presenti in un intervallino con una loro aggregato (per esempio la media) rappresentativa – Approssimazione di tale media al più vicino valore conosciuto
Errore di Quantizzazione
• 1° errore: bisogna rappresentare una continuità di valori (quelli del sotto-intervallo) con un unico valore che li
rappresenti tutti.
• Bisogna cioè farne una “media”. Quando si sostituisce ad un insieme di valori una media si perde informazione
– Es. si supponga che quattro persone siano alte, rispettivamente, 170, 171, 172 e 173 cm. L'altezza media del gruppo è quindi 171.5 cm. Tale valore
• rappresenta l'intero gruppo, ma porta meno informazioni di quelle portate dalla conoscenza delle altezze di ognuno.
Errore di Quantizzazione
• 2° errore: bisogna approssimare la “media” di un
intervallino con uno di un numero finito di valori,
e che può non corrispondere a tale valore
medio.
– Per tornare all’esempio dell’altezza media, si supponga che essa debba essere espressa approssimandola al centimetro.
– Per cui il valore della media, che era 171.5 va
“arrotondato” a 172 cm, perdendo, quindi, un’ulteriore frazione di informazione.
Suono digitale
• Formato standard per i CD audio
– frequenza di campionamento di 44'100 Hz – quantizzazione su 65'536 livelli
(un campione viene codificato su 16 bit)
• Un secondo di musica stereo richiede 44'100 campioni di 16 bit (2 byte) ciascuno per due canali, quindi 176'400 byte.
• L’errore che si commette nella ricostruzione del segnale sonoro è difficilmente rilevabile da parte di un orecchio umano.
Foto digitali
• Per la codifica digitale delle immagini le operazioni di campionamento e quantizzazione si applicano nello spazio invece che nel tempo.
• Il campionamento consiste nel dividere l’immagine in sottoinsiemi (pixel, cioè
picture element), per ognuno dei quali si dovrà prelevare un campione che si
considera rappresentativo del colore di tutto il sottoinsieme.
• La quantizzazione è la codifica del colore associato a ogni pixel: i più recenti formati utilizzano 32 bit (4 byte) per pixel: 8 bit per ognuna delle tre componenti fondamentali (RGB: red, green, blue) e altri 8 per gestire le trasparenze.
• Memoria necessaria per immagini non compresse (bitmap)
– per un’immagine di 640´480 pixel servono 1'228'800 byte; – per un’immagine di 800´600 pixel servono 1'920'000 byte; – per un’immagine di 1024´768 pixel servono 3'145'728 byte; – per un’immagine di 1280´1024 pixel servono 5'242'880 byte; – per un’immagine di 1600´1200 pixel servono 7'680'000 byte; – …
Rappresentazione Analogica vs Digitale
• DIGITALE è un'approssimazione di ANALOGICO
• Ma allora come mai i dati digitali ci sembrano addirittura più fedeli (e più "puliti") di quelli analogici? Per 2 motivi. • Perché I nostri sensi non sono in grado di percepire tutti
i dettagli di una grandezza analogica
– Distinguiamo solo qualche milione degli infiniti colori presenti in natura.
– Non siamo in grado di percepire tempi dell’ordine del miliardesimo di secondo
– Oltre un certo livello di dettaglio e di profondità, il nostro occhio non può andare (non riusciamo a distinguere una formica su un campo di calcio)
Rappresentazione Analogica vs Digitale
• Al contrario, la rappresentazione digitale permette di ottenere una “precisione” dei dettagli praticamente illimitata
• Infatti, agendo sul livello di quantizzazione si può scendere a dettagli di rappresentazione infinitesimi:
– Immagine digitale può presentare miliardi di colori.
– Cronometri elettronici misurano i tempi di arrivo con esattezza fino al millesimo di secondo (si pensi alle gare di atletica leggera o di sci, dove la misurazione manuale è sostituita da quella
elettronica)
– Microscopi elettronici “vedono” dentro la materia con ingrandimenti dell’ordine di miliardi di volte.
Rappresentazione Analogica vs Digitale
• Inoltre, quando il segnale è scomposto in parti
molto piccole (campionamento elevato) i nostri
sensi vengono “tratti in inganno” e percepiscono
il segnale come se fosse analogico e non
digitale.
– CD sembra più fedele di un disco in vinile. – La stampa di una foto sembra che catturi più
particolari di quelli effettivamente presenti sulla scena – …
Fondamenti di
Informatica
Prof. Fenza Giuseppe
CONVERGENZA AL DIGITALE
Rappresentazione classica
• Fino a pochi anni fa le informazioni venivano trattate da apparecchi elettro-meccanici diversi: – Macchine da scrivere – Fotocopiatrici – Telefoni – Videoregistratori – Giradischi – Televisori – …
• Questo implicava notevoli difficoltà nel
– Integrare le informazioni tra di loro
– Modificare (ma anche copiare, memorizzare, trasportare …) le informazioni
Rappresentazione Analogica e digitale
• (ANALOGICO) Informazioni di tipo diverso sono
– rappresentate con linguaggi diversi (suoni, video, ecc.)
– trattate con strumenti diversi (Giradischi, videoregistratore, ecc.)
– Memorizzati su supporti diversi (dischi, VHS, ecc.)
• (DIGITALE) Informazioni di tipo diverso sono
– rappresentate con un unico linguaggio (il linguaggio dei bit, le lunghe catene di '0' e '1')
– trattate con un unico strumento (il computer)
– Memorizzate su uno stesso supporto, (es Hard Disk) indipendentemente dal tipo di dato.
Convergenza al digitale
• Gran parte delle informazioni e delle conoscenze del genere umano può essere trasformata in digitale.
• La Convergenza al Digitale è il processo di progressivo
trasferimento verso il formato digitale di informazioni
tradizionalmente collegate a media diversi.
• Con la convergenza al digitale:
– si unificano i supporti (memorie di massa, rete) – si unificano le tecnologie di produzione
– si unificano gli strumenti di trattamento (computer)
Convergenza al digitale
• Con la Convergenza al Digitale è possibile:
– gestire e manipolare testi, immagini, suoni, filmati usando tecniche molto simili,
– Distribuire rapidamente l’informazione (a costi quasi nulli) – Modificare facilmente un oggetto
– Integrare facilmente oggetti di tipo diverso (inserire un testo o una musica in un filmato, o un’immagine, un suono o un filmato in un documento con del testo)
• Ciò rende possibile forme di comunicazione nuove,
con caratteristiche e potenzialità innovative.
Convergenza al digitale
• perché la trasformazione in formato digitale
dell'informazione è così importante, tanto da far
parlare di rivoluzione digitale?
• … per quello che abbiamo detto finora, potrebbe
trattarsi di una tecnica di rappresentazione come
un'altra
– La disponibilità di un unico linguaggio (quello binario) per rappresentare informazione di tipi diversi,
– La disponibilità di un unico strumento (il computer) che permette di trattare l’informazione, creandola, conservandola, elaborandola, e trasmettendola a distanza attraverso le reti telematiche.
Fondamenti di
Informatica
Prof. Fenza Giuseppe
Codifica Binaria [Sez: 2.5]
Concetto di Informazione
• I computer elaborano informazioni, ma cos’è
un’informazione?
• Possiamo associare il concetto di
informazione al contenuto di un messaggio,
inviato da una sorgente a un ricevente
– Una sorgente può emettere un insieme di
messaggi
– acquisire un'informazione equivale a ricevere un
messaggio tra tutti quelli possibili
Ciao!Concetto di Informazione binaria
• Se la sorgente può emettere solo 2 simboli
differenti, l'informazione si dice binaria
• Perché siamo interessati all'informazione binaria?
– In un computer i dispositivi elettrici, elettronici o
meccanici, di norma, assumono solo uno tra due stati:
• Interruttore: aperto/chiuso
• Corrente in un filo: passa/non passa
• Polarità di un punto su un supporto magnetico: +/-• Punto su un CD o DVD: riflette/non riflette la luce
– Un computer è quindi in grado di trattare, in modo diretto, solo informazioni rappresentate in binario.
Rappresentazione Informazione Binaria
• Come si “rappresenta” un’informazione binaria?
– In molti modi. Alcune rappresentazioni sono più “comode” di altre.
• Per rappresentare un’informazione binaria è
sufficiente disporre
– di un alfabeto con due simboli
• a cui si associano i due valori dell’informazione
binaria. Ad esempio
Rappresentazione Informazione Binaria
• Esempio: si vuole “rappresentare” (ad es.
scrivere su un foglio di carta) lo stato di
luminosità di una stanza ogni 10 minuti, a
partire dalle ore 15:00 e fino alle ore 16:00.
• La luce in una stanza può essere in uno solo
di due possibili stati:
– Spenta
– Accesa
Rappresentazione Informazione Binaria
• Per “memorizzare” la variazione nel tempo (ogni 10 minuti) della luminosità della stanza è opportuno utilizzare una rappresentazione “scritta” del fenomeno.
• Possiamo convenire che
– 0: luce “spenta” – 1: luce “accesa”
• E quindi, ogni 10 minuti, a partire da un momento iniziale (le ore 15:00) scriviamo 0 o 1 in base allo stato di luminosità.
– Così, se alla fine avremo scritto, 0111010, significa che
• Alle ore 15:00: la luce era spenta (0) • Alle ore 15:10: la luce era accesa (1) • Alle ore 15:20: la luce era accesa (1) • Alle ore 15:30: la luce era accesa (1) • Alle ore 15:40: la luce era spenta (0) • Alle ore 15:50: la luce era accesa (1) • Alle ore 16:00: la luce era spenta (0)
BIT
• Unità di misura dell’informazione (BInary digiT)
• Quantità di informazione fornita dalla scelta fra
due sole alternative (egualmente probabili)
• Un bit può assumere solo i valori 0 e 1
spento
Informazioni più “complesse”
• Quando l'informazione è più complessa della binaria? • Cioè, quando la scelta è fra più di due alternative?
• Costruiremo "parole" concatenando più bit(1)
– Es.: voglio rappresentare l'esito di una partita tra A e B
• se non può terminare con un pareggio (es eliminatoria diretta):
– 0 vince A 1 vince B
• se può terminare con un pareggio e interessa il tipo di pareggio:
– 00 pareggio 0-0 11 pareggio con reti
– 10 vince A 01 vince B
– (1) Ovviamente non è possibile usare altri simboli (2, 3, …) oltre 0 e 1 perché il computer conosce solo l'alfabeto
Informazioni più “complesse”
• Semaforo (Colore ßà Informazione)
• Codificare con 3 bits
– 100 ßà ROSSO ACCESO, Giallo spento, Verde spento
– 010 ßà Rosso spento, GIALLO ACCESO, Verde spento
– 001 ßà Rosso spento, Giallo spento, VERDE ACCESO
Informazioni più “complesse”
• Metodo “alternativo” (più efficiente)
• I possibili messaggi di un semaforo sono 4
• Codificare con 2 bits. Infatti:
• 00 ßà ROSSO ACCESO, Giallo spento, Verde spento • 01 ßà Rosso spento, GIALLO ACCESO, Verde spento • 10 ßà Rosso spento, Giallo spento, VERDE ACCESO • 11 ßà SEMAFORO GUASTO (messaggio “aggiuntivo”)
– Si noti che
• Spesso, con il Giallo Accesso resta acceso anche il verde • a volte il verde acceso è sostituito dal giallo lampeggiante
– Questo non cambia il numero dei possibili messaggi, che resta 4
BYTE
• 8 bit ß à 1 byte
• 1 byte si rappresentano 256 messaggi differenti.
• Ogni messaggio è rappresentato da una sequenza
•
da 00000000 a 11111111
Sequenze di k bit
• Con 8 bit si possono costruire 256 parole
• Quante parole binarie si possono costruire
con k bits?
– Notiamo che passando da k-1 bit a k bit il
numero di parole raddoppia
• Infatti, per costruire tutte le parole possibili composte da k bit, basta aggiungere prima 0 e poi 1 a tutte le parole lunghe k-1 bit.
• k=1 à 0, 1
• k=2 à 00, 01, 10, 11
• k=3 à 000, 001, 010, 011,100, 101, 110, 111
Combinazioni Di Bit
Bit a disposizione Le combinazioni Il numero di combinazioni 1 0,1 2=21 2 00,01,10,11 4=22 3 000,001,010,100,110,101,011,111 8=23 4 0000,0001,0010,0100,0110,0101,0011,0111, 1000,1001,1010,1100,1110,1101,1011,1111 16=24 5 00000,00001,00010,00100,00110,00101, 00011,00111,01000,01001,01010,01100, 01110,01101,01011,01111,10000,10001, 10010,10100,10110,10101,10011,10111, 11000,11001,11010,11100,11110,11101, 11011,11111 32=25 … … …Codifica Binaria
• Alfabeto binario: usiamo dispositivi con solo due stati
• Problema: assegnare un codice univoco a tutti gli oggetti compresi in un insieme predefinito (e.g. studenti)
• Quanti oggetti posso codificare con k bit:
– 1 bit Þ 2 stati (0, 1) Þ 2 oggetti (e.g. Vero/Falso) – 2 bit Þ 4 stati (00, 01, 10, 11) Þ 4 oggetti
– 3 bit Þ 8 stati (000, 001, …, 111) Þ 8 oggetti – …
– k bit Þ 2k stati Þ 2k oggetti
• Quanti bit mi servono per codificare N oggetti:
– N ≤ 2k Þ k ≥ log
2N Þ k = élog2Nù (intero superiore)
• Attenzione:
Esempio di codifica binaria
• Problema:assegnare un codice binario univoco a tutti i giorni della settimana
• Giorni della settimana: N = 7 Þ k ≥ log27 Þ k = 3
• Con 3 bit possiamo ottenere 8 diverse configurazioni:
– Ne servono 7, quali utilizziamo?
– Quale configurazione associamo a quale giorno?
• Attenzione:
I giorni della settimana in
binario (1)
1 bit 2 “gruppi” 2 bit 4 “gruppi” 3 bit 8 “gruppi” Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica 000 001 010 011 100 101 111 110 Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica 00 01 10 11 Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica 0 1 Lunedì Martedì Mercoledì Giovedì Venerdì Sabato DomenicaI giorni della settimana in
binario (2)
1 bit 2 “gruppi” 2 bit 4 “gruppi” 3 bit 8 “gruppi” Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica 000 001 010 011 100 101 111 110 Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica 00 01 10 11 Lunedì Martedì Mercoledì Giovedì Venerdì Sabato Domenica 0 1 Lunedì Martedì Mercoledì Giovedì Venerdì Sabato DomenicaUnità di misura
• Bytes(8 bits)
– 1 byte: A single character – 10 bytes: A single word • Kilobyte (1000 bytes)
– 1 Kilobyte: A very short story • Megabyte (1 000 000 bytes)
– 1 Megabyte: A small novel OR A 3.5 inch floppy disk – 500 Megabytes: A CD-ROM OR The hard disk of a PC • Gigabyte (1 000 000 000 bytes)
• Terabyte (1 000 000 000 000 bytes)
– 1 Terabyte: An automated tape robot OR All the X-ray films in a large technological
• Petabyte (1 000 000 000 000 000 bytes)
– 20 Petabytes: Production of hard-disk drives in 1995 • Exabyte (1 000 000 000 000 000 000 bytes)
• Zettabyte (1 000 000 000 000 000 000 000 bytes) – Internet Traffic to Reach 1.3 Zettabytes by 2016
Fondamenti di
Informatica
Prof. Fenza Giuseppe
Codifica dei Caratteri [Sez: 2.5, 18.3]
Caratteri di un testo
• Un Testo è una successione di caratteri
– Ogni carattere appartiene a un insieme finito e
ristretto di simboli (lingue basate sull'alfabeto
latino)
– In un testo non ci sono solo le 26 lettere
dell'alfabeto, ma anche altri simboli quali:
• 10 Simboli numerici
• Simboli di interpunzione
• Altri simboli speciali (+ - & ^ …)
• Alcuni segnali di comando (“Vai a capo”, “Ritorno di carrello”, “TAB”, ecc..)
Codifica ASCII
• Per codificare un testo applichiamo il metodo
generale
– oggetto da codificare ßà successione di bit
• Per codificare i testi faremo corrispondere
• Ad ogni carattere
• Una diversa parola binaria
• Le parole binarie devono contenere un numero di
bits sufficienti a coprire tutti i principali caratteri
Codifica ASCII (7 bit e 128 caratteri)
– La codifica utilizzata nei computer è detta ASCII
(si legge 'aski', American Standard Code for
Information Interchange)
– Inizialmente essa era definita su 7 bit e
permetteva quindi di codificare 128 caratteri
diversi (2
7=128)
– Ad esempio:
• 1000001 à A • 1000010 à B • 1000011 à C– … e così via
Codifica ISO Latin1 (ASCII a 8 bit e
256 caratteri)
• La codifica attualmente usata, ISO Latin 1
(detta anche ASCII estesa), ha aggiunto un
bit 1 in prima posizione alla ASCII su 7 bit e
fa corrispondere
• ad ogni carattere
• un numero binario di 8 bits
• Con 8 bit, è possibile rappresentare 256
caratteri diversi (2
8=256)
Codifica ISO Latin1 (ASCII a 8 bit e
256 caratteri)
Codifica/Decodifica
• (Codifica) Una stringa di caratteri è
rappresentata da una successione 8 bits:
• (Decodifica) Data una sequenza di bits, il testo
che essa codifica può essere così ricostruito:
– Si divide la sequenza in gruppi di 8 bits
– Si determina il carattere corrispondente ad ogni
byte
C
a
r
o
A
l
d
o
,
Una codifica per i numeri
• Tavola ASCII presenta tutte le 10 cifre (da 0 a 9).
– Es: 0 à 00110000; 1à00110001; 2à 00110010;
• Il numero 324 viene così rappresentato da 3 bytes:
•
00110011 0110010 00110100
•
3 2 4
• Questa rappresentazione
– non è efficiente (ce ne renderemo presto conto)
– Non è adatta per eseguire le operazioni aritmetiche
Ordinamento basato sulla codifica
ASCII
• Quando viene ordinato alfabeticamente un
testo, il computer segue l’ordine del
carattere nella tavola ASCII,
• Ad esempio “1P” precede “P1”
– 1P è dato dal numero 00110001 01110000,
– mentre P1 dal numero 01110000 00110001 e
Codifica UNICODE
• ISO Latin 1 su 8 bit non è veramente 'universale'
• Codifica Unicode: una tavola di codifica basata su
più di 8 bit
– Unicode ha l’obiettivo di includere tutti i caratteri rappresentabili al mondo.
– Unicode originariamente era codifica a 16 bit
• Capace di codificare 65.536 caratteri.
– Attualmente Unicode è una codifica a 21 bit
Testo non formattato (txt)
• Un testo non formattato è memorizzato come
sequenza di caratteri senza alcun attributo
(colore, dimensione, stile, ecc.)
– ASCII
– UNICODE
• Un testo non formattato può essere
modificato da moltissimi programmi (inclusi i
word processor). Normalmente si usa il
Testi formattati
• Un testo formattato è una sequenza di caratteri
con attributi (colore, dimensione, stile, ecc.)
• Per modificare un testo formattato spesso si può
utilizzare solo il software che lo ha creato (es
Word o Adobe Acrobat)
• Esistono programmi che permettono di "leggere"
ma non modificare testi formattati (visualizzatori)
– Visualizzatore di Word – Acrobat Reader
Testi con marcatori (HTML)
• Un altro formato per testi e ipertesti è HTML
– L'HyperText Markup Language (HTML) (linguaggio a marcatori per ipertesti) è il linguaggio solitamente usato per la formattazione di documenti ipertestuali nel WWW.
• HTML (e la sua evoluzione XHTML)
– non è un linguaggio di programmazione in quanto
• non presenta variabili, strutture dati, strutture di controllo, …
– ma è un linguaggio di formattazione
– XHTML (eXtensible HyperText Markup Language, Linguaggio di marcatura di ipertesti estensibile) è un linguaggio che permette di scrivere pagine HTML in conformità con lo standard XML.
Testi con marcatori (HTML)
• Il linguaggio HTML descrive le modalità di
visualizzazione grafica (layout) del contenuto di una pagina web grazie all'utilizzo di tag.
• La formattazione avviene inserendo nel testo, che è di tipo non formattato (txt), alcuni marcatori o etichette, i tag,
– che descrivono caratteristiche come il colore, le
dimensioni, la posizione relativa all'interno della pagina.
• È compito del browser trasformare i tag in formattazioni.
Testi con marcatori (HTML)
• Ogni tag è una sequenza di caratteri racchiusa tra due parentesi angolari (<>)
– Es.: <br /> (indica un ritorno a capo).
• Quando il tag deve essere applicato a una parte di un testo, questa deve essere delimitata fra un tag di apertura ed uno di chiusura, che coincide col tag di apertura preceduto da una barra (/)
– Es.: <b>testo testo testo</b> (in questo caso, il testo tra questi tag verrà visualizzato in grassetto dal browser).
– Alcuni tag non richiedono il tag di chiusura, come per esempio il tag <img> che serve per inserire un'immagine
Fondamenti di
Informatica
Prof. Fenza Giuseppe
Codifica di Dati Complessi [Sez: 2.5]
Rappresentazioni di immagini
•
Le immagini sono un ‘continuo’ e non sono
formate da sequenze di oggetti ben
definiti come i numeri
•
Bisogna quindi prima ‘discretizzarle’
ovvero trasformarle in un insieme di
parti distinte che possono essere
codificate separatamente con sequenze
di bit
Rappresentazione e Codifica dei Dati
Complessi: Le Immagini
Suddividiamo l’immagine mediante una griglia formata da righe orizzontali e verticali a distanza costante
Rappresentazione e Codifica dei Dati
Complessi: Le 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 è
Rappresentazione e Codifica dei Dati
Complessi: Le Immagini
• Rappresentazione Binaria: – Alfabeto {0, 1} • Codifica: – 1 se è predominante il nero – 0 se è predominante il bianco • Rappresentazione:Rappresentazione e Codifica dei Dati
Complessi: Le Immagini
Rappresentazione e Codifica dei Dati
Complessi: Le Immagini
• Ottengo una rappresentazione più fedele se
aumento il numero dei pixel (ossia al diminuire
delle dimensioni dei quadratini della griglia in cui
è suddivisa l’immagine:
Considerazioni
•
La perdita di informazione è accettabile nella
rappresentazione delle immagini (in alcuni casi)
ma non è accettabile nella codifica dei numeri,
dei testi, etc. (in questi casi l’informazione non
deve essere soggetta ad errori e abbiamo
•
Assegnando un bit ad ogni pixel è possibile
codificare solo immagini in bianco e nero
•
Per codificare le immagini con diversi livelli di
grigio oppure a colori si usa la stessa tecnica:
per ogni pixel viene assegnata una sequenza di
bit
•
Per memorizzare un pixel non è più sufficiente
un solo bit
– Per esempio, se utilizziamo quattro bit possiamo rappresentare 24 = 16 livelli di grigio o 16 colori diversi
– Mentre con otto bit ne possiamo distinguere 28 = 256, ecc.