• Non ci sono risultati.

Fondamenti di Informatica

N/A
N/A
Protected

Academic year: 2021

Condividi "Fondamenti di Informatica"

Copied!
82
0
0

Testo completo

(1)

Fondamenti di

Informatica

Prof. Fenza Giuseppe

Introduzione al Digitale [Sez: 2.3, 2.4, 2.5]

(2)

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

(3)

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

(4)

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

(5)

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

(6)

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

(7)

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

(8)

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

(9)

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

(10)

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

(11)

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

(12)

Fondamenti di

Informatica

Prof. Fenza Giuseppe

Digitalizzazione di un Segnale Analogico

(13)

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)

0

0 binario

1 2 3 4 5

1 binario

Non

lecito

(14)

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

(15)

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

(16)

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

(17)

Informazione Digitale Binaria

• Nei computer, l’informazione digitale è presente nel suo

formato 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

(18)

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

(19)

Campionamento e

quantizzazione

Ampiezza della grandezza fisica Tempo Va lo ri r ap pr es en ta ti vi

(20)

Campionamento e quantizzazione

T1 T2 T3 T4 T5 T6 T7 t1 t2 t3 t4 t5 t6 t7 A0 A1 A2 A3 Ampiezza Tempo

(21)

Ricostruzione

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 campionati

(22)

Quantizzazione 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 grandezza

Andamento della grandezza ricostruito dai valori campionati con quattro livelli di quantizzazione

Andamento della grandezza ricostruito dai valori campionati con otto

(23)

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

(24)

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.

(25)

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.

(26)

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.

(27)

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; – …

(28)

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)

(29)

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.

(30)

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 – …

(31)

Fondamenti di

Informatica

Prof. Fenza Giuseppe

CONVERGENZA AL DIGITALE

(32)

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

(33)

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.

(34)

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)

(35)

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.

(36)

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.

(37)

Fondamenti di

Informatica

Prof. Fenza Giuseppe

Codifica Binaria [Sez: 2.5]

(38)

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!

(39)

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.

(40)

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

(41)

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

(42)

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)

(43)

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

(44)

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

(45)

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

(46)

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

(47)

BYTE

• 8 bit ß à 1 byte

• 1 byte si rappresentano 256 messaggi differenti.

• Ogni messaggio è rappresentato da una sequenza

da 00000000 a 11111111

(48)

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

(49)

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 … … …

(50)

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:

(51)

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:

(52)

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 Domenica

(53)

I 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 Domenica

(54)
(55)
(56)

Unità 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

(57)

Fondamenti di

Informatica

Prof. Fenza Giuseppe

Codifica dei Caratteri [Sez: 2.5, 18.3]

(58)

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

(59)

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

(60)

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

(61)
(62)

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)

(63)

Codifica ISO Latin1 (ASCII a 8 bit e

256 caratteri)

(64)

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

,

(65)

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

(66)

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

(67)

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

(68)

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

(69)

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

(70)

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.

(71)

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.

(72)

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

(73)

Fondamenti di

Informatica

Prof. Fenza Giuseppe

Codifica di Dati Complessi [Sez: 2.5]

(74)

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

(75)

Rappresentazione e Codifica dei Dati

Complessi: Le Immagini

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

(76)

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 è

(77)

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:

(78)

Rappresentazione e Codifica dei Dati

Complessi: Le Immagini

(79)

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:

(80)

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

(81)

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.

(82)

…e la codifica delle immagini a colori?

Riferimenti

Documenti correlati

Esercizio 1 Per ciascuno dei seguenti segnali (a tempo continuo o a tempo discreto) dire se `e periodico e, in caso affermativo, trovarne il periodo

LA CAPILLARITÀ È UNA PROPRIETÀ DELL’ACQUA CHE SI OSSERVA QUANDO L’ACQUA SI TROVA A CONTATTO CON TUBI DI PICCOLE DIMENSIONI (DIAMETRO DEL TUBO INFERIORE A 2 mm ). SCRIVI SOTTO

– Il segnale analogico è immesso in un analog-to-digital converter (ADC), che effettua il campionamento desiderato con il sampling rate fissato; l’output è un flusso di valori

Poiché nell'analisi dei segnali provenienti da una MISURA si effettua il passaggio nel dominio della frequenza a partire da un segnale campionato e NON CONTINUO, la

Con tale schema di misura si ripete la misurazione della resistenza del cavetto, ottenendo un valore di 10 mΩ (decisamente più attendibile, anche se occorre mettere in conto

La conversione analogico-digitale trasforma un segnale analogico (valori continui in un tempo continuo) in segnale numerico (valori discreti in tem- po discreto).. Corso di

Piccolo scudo cucito nella maglia della squadra che ha vinto il campionato nazionale di

quando piove leggo un libro / guardo la tv / ascolto la musica quando c’è vento faccio una passeggiata / vado al mare / vado al parco quando nevica gioco a calcio/ a tennis /