Insegnamento di Informatica – a.a. 2016-17 Macerata, AA. 2016-2017 La rappresentazione delle informazioni INSEGNAMENTO DI INFORMATICA – A.A. 2016-17 Francesco Ciclosi Insegnamento di Informatica – a.a. 2016-17 La comunicazione tra uomo e macchina Affinché gli esseri umani possano interagire con gli elaboratori è necessario operare una traduzione tra i differenti linguaggi utilizzati da entrambi Gli elaboratori utilizzano un codice semplice e disambiguo (il linguaggio binario) Gli esseri umani utilizzano un codice complesso e ambiguo Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La comunicazione uomo-macchina può avvenire con successo se e solo se Avviene una conversione delle informazioni scambiate con l’elaboratore In tale processo si utilizzano le tabelle dei codici Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La rappresentazione delle informazioni Le informazioni possono essere codificate come pattern di bit Esistono metodologie differenti per codificare: • • • • Testo Numeri Immagini Suono Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Rappresentazione del testo Insegnamento di Informatica – a.a. 2016-17 Il carattere È un’unità minima di informazione Corrisponde a un grafema, o a un simbolo, della forma scritta di una lingua naturale Esempi di carattere sono: • • • • lettere numeri segni di interpunzione caratteri di controllo (es: carriage return, line feed) Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Rappresentazione del testo Le informazioni testuali sono rappresentate tramite un codice che assegna a ogni carattere un pattern univoco di bit Esistono vari codici di questo tipo e non tutti i dispositivi li sanno interpretare Per risolvere i problemi di standardizzazione l’ANSI ha adottato il codice ASCII Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 ASCII ASCII (American Standard Code for Information Interchange) è un codice per la codifica dei caratteri Lo standard è stato pubblicato da ANSI nel 1968 Il sistema originario US-ASCII codificava i caratteri a 7 bit e è ora standard ISO (ISO/IEC 646) Nei PC si usa la versione extended ASCII che utilizza 8 bit per la codifica Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La codifica US-ASCII Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 ASCII esteso Utilizza l’ottavo bit di ogni byte per rappresentare altri 128 caratteri aggiuntivi Ciò ha prodotto notevoli problemi di compatibilità dovuti anche all’utilizzo di estensioni proprietarie ISO ha rilasciato uno standard (ISO 8859) contenente un’estensione a 8 bit del set ASCII • ISO 8859-1 (Latin1): caratteri lingue Europa Occidentale • ISO 8859-2: caratteri linguaggi Europa Orientale • ISO 8859-5: caratteri cirillici Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La codifica Latin1 Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Un esempio di codifica ASCII B U O N 0100 0010 0101 0101 0100 1111 0100 1110 G I O R N O 0100 0111 0100 1001 0100 1111 0101 0010 0100 1110 0100 1111 Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Criticità di ASCII Anche nella versione estesa è troppo ridotto per ospitare gli alfabeti di alcune lingue • Come a esempio quelle asiatiche Poiché un documento può utilizzare un solo standard, nello stesso documento non sono supportate lingue appartenenti a gruppi linguistici differenti Per ovviare a tali criticità nasce UNICODE Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Lo standard Unicode Assegna un numero univoco ad ogni carattere usato per la scrittura di testi, in maniera indipendente • dalla lingua • dalla piattaforma informatica • dal programma utilizzato È compilato e aggiornato dall’Unicode Consortium che opera per garantire l’interoperabilità nel trattamento informatico di testi in lingue diverse Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Unicode + UTF-8 Se il set di caratteri Unicode è combinato con lo standard Unicode Transformation Format 8-bit (UTF-8): • I caratteri ASCII originali sono rappresentati con 8 bit • I caratteri di altre lingue (come cinese, giapponese e ebraico) sono rappresentati con 16 bit • Sono disponibili pattern a 24 e 32 bit per rappresentare altri simboli insoliti e per future espansioni Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Differenza tra file di testo Un file di testo è un file composto da una lunga sequenza di simboli codificati in ASCII o Unicode Esistono file di testo semplici • Manipolati da editor di testo (come Blocco Note) • Che contengono solo una codifica carattere per carattere Esistono file di testo più elaborati • Manipolati dai word processor (come Microsoft Word) • Contengono oltre alla codifica carattere per carattere, molti codici proprietari rappresentanti la formattazione Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Esempio di differenze tra file di testo Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Rappresentazione dei valori numerici Insegnamento di Informatica – a.a. 2016-17 Alcune problematiche di rappresentazione Se i dati da registrare sono solo numerici, rappresentarli come caratteri non è efficiente • Utilizzando un byte per simbolo, la rappresentazione di un numero in ASCII richiede sempre un byte In tal caso utilizzeremo la notazione binaria • ASCII: 1 byte 10 numeri | 2 byte 100 numeri • Binario: 1 byte 256 numeri | 2 byte 65536 numeri Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La notazione binaria Nella notazione binaria i numeri sono rappresentati utilizzando solo le cifre: 0, 1 Nella notazione decimale i numeri sono rappresentati utilizzando le cifre: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code 0 0 1 1 2 1 0 3 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1 8 1 0 0 0 9 1 0 0 1 10 1 0 1 0 Numeri binari Numeri decimali Insegnamento di Informatica – a.a. 2016-17 Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Tecniche di memorizzazione numerica I numeri interi sono memorizzati utilizzando il sistema della notazione in complemento a due • Consente di rappresentare sia i numeri negativi che quelli positivi I numeri che presentano una parte frazionaria sono memorizzati utilizzando la notazione in virgola mobile Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La rappresentazione delle immagini Insegnamento di Informatica – a.a. 2016-17 L’immagine come insieme di puntini L’immagine può essere descritta come una collezione di punti Ogni punto è detto pixel (picture element) Una collezione di pixel codificati viene denominata bitmap (mappa di bit) Stampanti e monitor operano con il concetto di pixel Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La codifica di un pixel Per rappresentare un pixel serve un numero di bit variabile con la quantità di informazione presente • Immagine in b/n (fax) 1 bit • Immagine a toni di grigio (255) 1 byte • Immagine a colori in true color (circa 16 milioni di colori) 3 byte Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La codifica di un’immagine a colori Ci sono due differenti approcci per codificare ciascun pixel: • RGB o Ogni pixel è rappresentato come combinazione di 3 colori (rosso, verde, blu) o Per rappresentare ogni colore si utilizza un byte • Luminosità + colore o La luminosità (o luminanza) è la quantità di luce bianca nel pixel o La crominanza blu/rossa è, rispettivamente, la differenza tra la luminanza e la quantità di luce blu/rossa Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Problematiche delle bitmap L’immagine non è ingrandibile se non aumentando la dimensione dei singoli pixel che la compongono Il risultato ottenuto è un’immagine sgranata Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La rappresentazione vettoriale Consiste nel descrivere l’immagine come insieme di strutture geometriche codificabili utilizzando tecniche di geometria analitica Il dispositivo che visualizzerà l’immagine potrà scegliere come rappresentare le strutture geometriche • Non sarà quindi richiesta la riproduzione di un pattern di pixel particolare Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 I font bitmap Sono un particolare tipo di font che prevede la memorizzazione dei caratteri come matrice di punti Utilizzano le mappe di bit Occupano una grossa porzione di memoria Sono usati nelle stampanti Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 I font scalabili Sono memorizzati come una serie di formule che descrivono la struttura dei caratteri Sono ridimensionabili Occupano poco spazio in memoria In sede di stampa sono convertiti in mappa di bit (rasterizzazione) Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La rappresentazione dei suoni Insegnamento di Informatica – a.a. 2016-17 Segnale analogico ∞ stati possibili È molto sensibile alle interferenze Può assumere infiniti stati Presenta di fatto una minore risoluzione Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Segnale digitale Poco sensibile alle interferenze Può assumere due soli stati: 0 e 1 Presenta una maggiore risoluzione 2 soli stati possibili Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Digitale vs analogico: interferenze I segnali digitali sono più resistenti alle interferenze di quelli analogici • È più semplice riconoscere tra due soli stati anche in base al «principio di prossimità» Segnale digitale «pulito» Segnale analogico «pulito» Segnale digitale con interferenze Segnale analogico con interferenze Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Segnale continuo È una grandezza fisica variabile nel tempo in modo continuo Non è funzione di una variabile discreta Il valore della grandezza può essere misurato in qualsiasi istante Può essere studiato sia nel dominio del tempo che in quello della frequenza Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Segnale discreto: definizione È una successione di valori di una grandezza in corrispondenza di una serie di valori discreti nel tempo È una funzione con valori forniti in corrispondenza a una serie di tempi scelti nel dominio dei numeri interi Ciascun valore della successione è chiamato campionamento Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Segnale discreto: campionamento Non è in funzione di una variabile continua ma è ottenuto campionando un valore continuo Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 «Risoluzione» di un segnale A parità di durata, la quantità di informazione trasportata da un segnale continuo è maggiore rispetto a quella trasportata da un segnale discreto Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Segnale digitale Un segnale digitale è un segnale discreto che può assumere soltanto valori appartenenti ad un insieme discreto È ottenuto campionando un segnale analogico (continuo) Ha una determinata frequenza di campionamento • Durata dell’intervallo temporale uniforme in corrispondenza del quale si misurano i valori della serie Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 La codifica classica delle informazioni audio Per codificare delle informazioni audio si procede: 1. campionamento dell’ampiezza dell’onda sonora a intervalli regolari 2. Registrazione delle serie di valori numerici ottenuti Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 Alcuni esempi Conversazione telefonica • 8000 campioni al secondo • Si effettua una codifica ogni otto millesimi di secondo CD audio • 44100 campioni al secondo • I dati sono ottenuti sono rappresentati con 16 o 32 bit (stereo) • Ogni secondo di musica richiede più di un milione di bit Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 MIDI: un’altra forma di codifica audio Il MIDI (Musical Instrument Digital Interface) è un sistema di codifica più economico Non prevede la codifica del suono Prevede la codifica delle istruzioni necessarie per produrre la musica su di un sintetizzatore La qualità dell’esecuzione del brano dipende dal sintetizzatore utilizzato per la riproduzione Il numero di bit necessario per la codifica è ridotto Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code Insegnamento di Informatica – a.a. 2016-17 I miei contatti linkedin http://it.linkedin.com/pub/francesco-ciclosi/62/680/a06/ facebook https://www.facebook.com/francesco.ciclosi twitter @francyciclosi www http://docenti.unimc.it/f.ciclosi http://www.francescociclosi.it Unimc - Dipartimento di Economia e Diritto - Corso di Laurea in Economia: banche, aziende e mercati © Francesco Ciclosi – Settembre 2016 CC-BY-SA 4.0 – Common Deed – Legal Code