La codifica dell informazione



Documenti analoghi
Elementi di Informatica. ( Lezione II, parte I ) Sistemi di numerazione: binario, ottale ed esadecimale

Informazione analogica e digitale

Unione Europea Repubblica Italiana Regione Calabria Cooperativa sociale

2. Codifica dell informazione

4 3 4 = 4 x x x 10 0 aaa

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Rappresentazione dell informazione Codifica Binaria

SISTEMI DI NUMERAZIONE E CODICI

La rappresentazione dell informazione

Rappresentazione di informazioni con un alfabeto finito

La codifica dell informazione

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l Ambiente e il Territorio

Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti

Corso di Informatica

Numerazione binaria e rappresentazione delle informazioni

Logica e codifica binaria dell informazione

(71,1), (35,1), (17,1), (8,1), (4,0), (2,0), (1,0), (0,1) 0, = 1, 431 0, = 0, 862 0, = 1, 792 0, = 1, 448 0, = 0, 896

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

= 1*2^7 + 1*2^6 + 0*2^5 + 1*2^4 + 0*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 210

Informatica. Rappresentazione dei numeri Numerazione binaria

Codifica delle Informazioni

Dispense di Informatica per l ITG Valadier

Laboratorio di Informatica

Elementi di Informatica e Programmazione

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dell informazione negli elaboratori

Operazioni binarie fondamentali

Operazioni Aritmetiche e Codici in Binario Giuseppe Talarico 23/01/2013

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

CODIFICA BINARIA. ... sono rappresentati ricorrendo a simboli che sintezzano il concetto di numerosità.

La codifica delle informazioni

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO

Sistemi di Numerazione

la scienza della rappresentazione e della elaborazione dell informazione

Lezione 2 OPERAZIONI ARITMETICHE E LOGICHE ARCHITETTURA DI UN ELABORATORE. Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche arch.

Lez. 3 L elaborazione (II parte) Prof. Pasquale De Michele Gruppo 2

Quanto può essere veloce un upload e un download?

Codifica dell informazione

INFORMATICA. Automa TRATTAMENTO AUTOMATICO DELLE INFORMAZIONI

Appunti di informatica. Lezione 2 anno accademico Mario Verdicchio

Sistemi di Numerazione Binaria NB.1

Rappresentazione dei numeri in un calcolatore

L'informazione e la sua codifica

Informatica 1. Riepilogo

IL CODICE BINARIO. Il codice binario. Codifica posizionale. Aritmetica binaria

Sistemi di numerazione: binario, ottale ed esadecimale

Rappresentazione delle informazioni

Rappresentazione binaria

la scienza della rappresentazione e della elaborazione dell informazione

Codifica binaria e algebra di Boole

Informatica Generale 02 - Rappresentazione numeri razionali

Come si misura la memoria di un calcolatore?

Convertitori numerici in Excel

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

Il sistema di numerazione posizionale decimale INFORMATICA DI BASE. Sistemi di numerazione: binario, ottale ed esadecimale

- Sistemi di numerazione 1 - Sistemi di Numerazione

Architettura degli Elaboratori I Esercitazione 1 - Rappresentazione dei numeri

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

BIT? Cosa c è dietro a questo nome? Che cos è il bit? Perché si usa? Come si converte un numero binario?

Prof. Alberto Postiglione Scienze della Comunicazione. Università degli Studi di Salerno

Codici Numerici. Modifica dell'informazione. Rappresentazione dei numeri.

Fondamenti di Informatica INFORMATICA ED UNITA DI MISURA

APPUNTI DI ELETTRONICA DIGITALE

Trattamento dell informazione

Internet e il World Wide Web. Informatica di Base A -- Rossano Gaeta 1

Alessandro Pellegrini

Scheda di approfondimento gioco I pixel

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico

2.12 Esercizi risolti

LA RAPPRESENTAZIONE DELLE INFORMAZIONI

Codifica dei numeri. Rappresentazione dell informazione

Rappresentazione e Memorizzazione dei Dati

Elementi di informatica

Tutto digitale. Musica Giornali, Libri satellite (TV, GPS) Telefoni: ISDN, GSM rete telefonica, internet Video (DVD) oh, anche il PC

Definizioni iniziali

Conversione tra le basi binarie

Informatica per la comunicazione" - lezione 7 -

ESEMPIO 1: eseguire il complemento a 10 di 765

Obiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico

La quantità. Rappresentazione dei numeri I numeri rappresentano quantità. Il sistema Binario. Binario

I sistemi di numerazione

Internet e il World Wide Web. Informatica Generale -- Rossano Gaeta 30

Sistema di numerazione binario, operazioni relative e trasformazione da base due a base dieci e viceversa di Luciano Porta

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

Fondamenti di Informatica

Sistemi di Numerazione

Sistemi di Elaborazione delle Informazioni. Corso di Laurea per "Tecnico Ortopedico" 03

Cos è un Calcolatore?

1 Sistema additivo e sistema posizionale


Le immagini digitali. Le immagini digitali. Caterina Balletti. Caterina Balletti. Immagini grafiche. Trattamento di immagini digitali.

Codifica binaria dei numeri relativi

Lezione 8. La macchina universale

Informatica. Rappresentazione binaria Per esempio diventa /10/2007. Introduzione ai sistemi informatici 1

Algoritmi e strutture dati. Codici di Huffman

Strutturazione logica dei dati: i file

Sistemi di numerazione: generalità

I SISTEMI DI NUMERAZIONE

Università degli Studi di Cassino Corso di Fondamenti di Informatica Codifica di dati e istruzioni. Anno Accademico 2010/2011 Francesco Tortorella

Tipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere

Transcript:

La codifica dell informazione Parte I Sui testi di approfondimento: leggere dal Cap. del testo C (Console, Ribaudo):.,. fino a pg.6 La codifica delle informazioni Un calcolatore memorizza ed elabora informazioni Ieri: file come aggregato di informazioni Oggi: focus sulla codifica dei veri dati elementari che formano l informazione completa su cui i sistemi di calcolo operano Domanda chiave di questa lezione: come vengono rappresentate le informazioni su cui lavora una computer, ossia quelle che costituiscono dati e istruzioni di programma all interno del calcolatore? Osservazione: le informazioni devono essere rappresentate in forma adatta alla memorizzazione e alla manipolazione da parte di un calcolatore automatico -> rappresentazione digitale

Informazione e codifica bla bla simboli sequenza di bit codifica Informazione gestibile da un utente umano Rappresentazione digitale decodifica Sommario Rappresentazione digitale o binaria Codifiche binarie di caratteri e simboli (dati non numerici) Codifica binaria dei dati numerici

Rappresentazione digitale o binaria All interno dell elaboratore ogni informazione è codificata usando la rappresentazione binaria o digitale, utilizzando cioè un alfabeto di due soli simboli: e Rappresentazione digitale: perché? Scelta della rappresentazione: vincolata al tipo di operazione che devo fare su questa informazione Le ragioni della scelta di una rappresentazione binaria sono prevalentemente di carattere tecnologico, ossia dipende da come funzionano i dispositivi che costituiscono il computer questi dispositivi sono bistabili: assumono sempre uno stato fra due possibili Esempio: due possibili stati di polarizzazione di una sostanza magnetizzabile Passaggio/non passaggio di corrente attraverso un conduttore Passaggio/non passaggio di luce attraverso una fibra ottica questi possibili stati fisici possono essere naturalmente tradotti nei simboli numerici del sistema binario e 3

Bit L entità minima di informazione codificabile attraverso la rappresentazione binaria è il bit Bit: da Binary Digit o cifra binaria può assumere valori: o BIT binary digit Con una cifra binaria posso rappresentare soltanto due informazioni, ognuna delle quali viene fatta corrispondere convenzionalmente al simbolo o Codifica binaria dell informazione Per poter rappresentare un numero maggiore di informazioni si usano sequenze di bit Ad esempio utilizzando bit si possono codificare quattro informazioni diverse: Il processo che fa corrispondere a una informazione una configurazione di bit prende il nome di codifica binaria dell informazione L associazione informazione/configurazione di bit è convenzionale: l importante è che tutti quelli che devono condividere l informazione usino la stessa convenzione 4

Esempio: simboli e codifiche Tramite bit posso codificare 4 diverse figure geometriche: Esempio: simboli e codifiche Tramite bit posso codificare 4 diversi risultati di un esame ottimo buono sufficiente insufficiente 5

Sequenze di bit e codifiche Con bit codifico informazioni: Con bit codifico 4 informazioni: Con 3 bit codifico 8 informazioni: 3 Con N bit codifico N informazioni Sequenze Codifica dell informazione di bit e codifiche Problema inverso: quanti bit ci vogliono per rappresentare M informazioni diverse (es. un alfabeto con M simboli)? Idea: seleziono il numero di bit N in modo che il numero delle possibili configurazioni di e sia max o uguale a M: N > = M -> c è almeno una configurazione da far corrispondere a ogni simbolo dell alfabeto Esempio: Se devo codificare informazioni diverse dobbiamo avere almeno 8 bit: 8 = 56 (> ) 7 bit non sarebbero sufficienti! 7 = 8 (< ) 6

Sequenze di bit e codifiche Numero di bit nella sequenza 3 4 5 6 7 8 Informazioni rappresentabili 4 8 6 3 64 8 56 Byte Un gruppo di 8 bit viene denominato byte Corrisponde alla memorizzazione di un carattere Consente di codificare 8 = 56 informazioni diverse 8 bit= byte 7

Byte Byte: unità di misura della capacità di memorizzare informazione Si utilizzano i multipli dei byte Kilo KB ~ un migliaio (4) Mega MB ~ un milione (KB*4) Giga GB 3 ~ un miliardo (MB*4) Tera TB 4 ~ mille miliardi (GB*4) Quanta memoria occupa un file: si misura in byte La capacità di memorizzazione di un dispositivo hardware si misura in byte (capacità di RAM, hard-disk) Byte Esempio: quanta memoria occupa un file sul mio harddisk? 8

Esempio: qual è la capacità di memoria del mio harddisk? Capacità totale,7 GB Byte spazio di memoria già utilizzato per memorizzare Informazioni 3,8 GB spazio di memoria ancora disponibile per memorizzare informazioni 7,88 GB Tipi di informazione e codifica binaria Vediamo nello specifico come vengono codificate mediante l alfabeto binario tipi di informazione elementari che solitamente ci interessa elaborare: caratteri utilizzati nella comunicazione scritta, numeri, immagini, suoni, video 9

Sommario Rappresentazione digitale o binaria Codifiche di caratteri e simboli Rappresentazione dei numeri I caratteri usati nella comunicazione scritta Il primo problema che si presenta se vogliamo poter comunicare con il computer usando il nostro linguaggio è quello di poter rappresentare un alfabeto di caratteri 5 lettere dell alfabeto anglosassone (maiuscole + minuscole) Segni di punteggiatura :,. ;!? Segni matematici + - { [ > Caratteri nazionali à è è ñ ç Altri segni grafici: @ In totale si tratta di un alfabeto di caratteri circa considerando che ho bisogno di associare a ogni carattere una configurazione di bit (codice numerico), ho bisogno di......almeno 8 bit ( byte)

Codifica di dati alfabetici o caratteri codifiche standard: per rimediare all apparente incomunicabilità fra linguaggio binario comprensibile dai computer e i dati alfabetici con cui di solito ci esprimiamo sono state definite alcune convenzioni (o codici) mediante le quali è possibile rappresentare in modo univoco un certo numero di caratteri attraverso configurazioni di bit prestabilite. ASCII (American Standard Code for Information Interchange) standard: 7 bit per carattere, rappresenta 8 caratteri ASCII esteso: 8 bit per carattere, rappresenta 56 caratteri UNICODE: 6 bit per carattere: (ASCII + caratteri etnici), rappresenta circa 65. caratteri codifiche proprietarie: MSWindows:6 bit per carattere, simile a UNICODE Unicode UNICODE: 6 bit per carattere -> in grado di codificare 6 caratteri diversi (~ 65.) ASCII + caratteri/simboli di altri alfabeti: greco, cirillico, cinese, arabo http://www.unicode.org/charts/ Codice in forma esadecimale 7 6 Binario:

Il codice ASCII caratteri di controllo segni di punteggiatura cifre decimali l. Alfabetiche maiuscole l. Alfabetiche minuscole Codice ASCII Simbolo NUL! P i l o Il codice ASCII ASCII standard: 7 bit per carattere -> in grado di codificare 7= 8 caratteri diversi Tabella: mancano le prime 3 configurazioni usate per la codifica dei caratteri speciali Legenda: nella prima colonna ho i primi 3 bit della codifica, nella prima riga gli altri quattro P ->

Sequenze di caratteri ASCII codifica di un singolo carattere -> codifica di una parola parola = sequenza di caratteri; codifica di una parola = sequenza delle codifiche ASCII dei caratteri che la costituiscono Codifica di un testo -> per la memorizzazione serviranno tanti byte quanti i caratteri che lo costituiscono (spazi bianchi e a capo compresi) Es. il Po! i l NUL P o! Sequenze di caratteri ASCII Il problema inverso: data una sequenza di bit, voglio ottenere il testo che codifica -> decodifica Dividendo la sequenza in gruppi di 8 bit è possibile risalire ai singoli caratteri che compongono la frase Es. P o i! 3

Esercizi Nell alfabeto di Terra Gemella sono previsti 333 simboli distinti. Di quanti bit ho bisogno per rappresentarli tutti? Quanti byte occupa la frase dati biologici se la codifichiamo utilizzando ASCII esteso? Quanti byte occupa se la codifichiamo in UNICODE? Dati bit, quante informazioni distinte posso rappresentare? Sommario Rappresentazione digitale o binaria Codifiche di caratteri e simboli Rappresentazione dei numeri 4

Numeri e codice ASCII Il codice ASCII permette di codificare cifre decimali da a 9 Usando il codice ASCII è possibile rappresentare numeri come sequenze di caratteri: Problema: con questo tipo di rappresentazione non posso effettuare operazioni aritmetiche -> il modo in cui codificheremo i numeri in binario si rifà direttamente alle leggi di conversioni di numeri con basi differenti Il sistema di numerazione posizionale decimale Partiamo dal modo in cui vengono rappresentati i numeri nel sistema di numerazione decimale a cui siamo abituati Notazione posizionale: ogni cifra del numero assume un certo valore in funzione della sua posizione 365 notazione compatta, sta per 3 + 6 + 5 o meglio 3 + 6 + 5 in notazione esplicita 5

Notazione posizionale Ogni numero si esprime come la somma dei prodotti di ciascuna cifra per la base (nel nostro caso ) elevata all esponente che rappresenta la posizione della cifra (partendo da a dx). 365 = (3 ) + (6 ) + (5 ) Notazione posizionale La notazione posizionale può essere usata con qualunque base creando così differenti sistemi di numerazione Per ogni base di numerazione utilizziamo un numero di cifre uguale alla base In informatica si utilizzano prevalentemente i sistemi di numerazione binaria (base ), ottale (base 8), ed esadecimale (base 6) 6

Sistema di numerazione decimale La numerazione decimale (base ) utilizza una notazione posizionale basata su cifre (da a 9) e sulle potenze di Il numero 365 può essere rappresentato esplicitamente come 3 + 6 + 5 MaT MeMo: data una base B, B = B, B = Sistema di numerazione binario Il sistema di numerazione binario (base ) utilizza una notazione posizionale basata su cifre ( e ) e sulle potenze di Il numero può essere rappresentato esplicitamente come = 3 + + + = 9 7

Sistema di numerazione ottale Il sistema di numerazione ottale (base 8) utilizza una notazione posizionale basata su 8 cifre (da a 7) e sulle potenze di 8 Il numero può essere rappresentato esplicitamente come 8 = 8 3 + 8 + 8 + 8 = 53 Esercizio: 534 8 in notazione esplicita Per evitare ambiguità si può esplicitamente indicare la base a cui si sta facendo riferimento: Esempio: Sistema di numerazione esadecimale Il sistema di numerazione esadecimale (base 6) utilizza una notazione posizionale basata su 6 cifre (da a 9 poi A,B,C,D,E,F) e sulle potenze di 6 Il numero B7FC può essere rappresentato esplicitamente come () 6 3 + 7 6 + (5) 6 + () 6 = 47 Nelle pagine Web i colori vengono codificati utilizzando il sistema esadecimale. 8

Conversione da base n a base Per convertire un numero da una qualunque base alla base è sufficiente rappresentarlo esplicitamente e fare i calcoli = 8 3 + 8 + 8 + 8 = 53 B7FC 6 = () 6 3 + 7 6 + (5) 6 + () 6 = 47 Conversione da base a base n Per convertire un numero decimale a una base n qualsiasi, occorre trovare tutti i resti delle successive divisioni del numero per la base n Esempio: voglio trovare il valore binario di ; divido per la base 9

Conversione da base a base Quoziente Resto 5 5 6 3 Lettura: 6 3 Conversione da base a base Leggendo la sequenza dei resti dal basso verso l alto si ottiene la codifica binaria: Per verificare se avete fatto errori potete riconvertire il risultato in base

Esercizi. Convertire in base decimale i seguenti numeri:, AAC3 6. Convertire in base i seguenti numeri: 65, 7 3. A occhio sapresti dire quali di questi numeri espressi in base binaria corrisponde a un numero decimale pari e quale dispari?, Soluzione degli Esercizi. e. Esercizio : convertire in base dieci binario decimale

Soluzione degli Esercizi. e. Esercizio : convertire AAC3 6 in base dieci esadecimale decimale somma dei prodotti Soluzione degli Esercizi. e. Esercizio : convertire 65 in base : Quoz. 65 3 66 33 6 8 4 Resto

Soluzione degli Esercizi. e. Esercizio : convertire 7 in base : Quoz. 7 63 3 5 7 3 Resto Soluzione Esercizio 3:. Perché? Per convertire un generico numero binario C n C n-...c C (ogni C i ha valore o ) nel corrispondente numero decimale occorre rappresentarlo esplicitamente e eseguire le operazioni: C n n + C n- n- +... + C + C La somma di questi addendi è sicuramente un numero pari; infatti per ogni C i (i =,..,n) se C i = -> i = ; se C i = -> i = i ; queste potenze sono multipli di due (-> numeri pari) 3

Esercizio 3 C n- n- +... + C + C + C numero pari se il numero decimale è pari o dispari dipende solo dall'addendo più a destra: se C = -> = ; numero pari + = numero pari se C = -> = ; numero pari + = numero dispari Quindi se l'ultima cifra di un numero binario è, sicuramente corrisponderà a un numero decimale dispari Rappresentazione dei numeri Tutti i numeri vengono distinti in 3 categorie: Interi senza segno (positivi) Interi con segno (positivi e negativi) Reali (numeri positivi e negativi con virgola) Ognuna di queste categorie viene rappresentata in modo diverso Indipendentemente dalla rappresentazione scelta, essa sarà di tipo finito e consentirà di rappresentare solo un sottoinsieme finito di numeri! 4

Codici a lunghezza fissa All interno del computer, a causa di vincoli tecnologici, per rappresentare qualsiasi tipo di numero occorre usare un numero prefissato di cifre binarie (bit): (6, 3 ) Riflettiamo: supponiamo di avere 4 cifre a disposizione, qual è il più grande numero rappresentabile? dipende... In base : 9999 In base : (5 ) In base 6: FFFF (655535 ) In base 8: 7777 (495 ) Massimo numero rappresentabile In generale abbiamo che con n cifre a disposizione e base b, il più grande numero (intero positivo) rappresentabile si può esprimere come: b n Es. con 4 cifre: In base : 9999 = 4 - In base : (5 ) = 4 - In base 6: FFFF (655535 ) = 6 4 - In base 8: 7777 (495 ) = 8 4-5

Numeri interi positivi Quindi nel caso di numeri interi positivi vale la seguente regola: Nella base di numerazione b, disponendo di un numero di cifre n, si possono rappresentare numeri: da a b n Nella rappresentazione binaria di interi positivi a 6 bit i possibili valori saranno compresi fra e 65.535 = 6 - (base ) Nella rappresentazione di interi positivi a 3 bit i possibili valori saranno compresi fra e 4.94.967.95 = 3 -(base ) Numeri interi positivi e overflow Numeri più grandi del massimo numero rappresentabile creano problemi cosiddetti di overflow Esempio: supponiamo che il computer supporti una rappresentazione dei numeri a 8 bit e si voglia eseguire la seguente operazione fra numeri binari: + (55) = () ------------- ********* -> errore di overflow Il risultato sarebbe (9 cifre!), l elaborazione si arresta e viene segnalato un errore di overflow 6

Esercizio 4 A quale dei seguenti numeri decimali corrisponde il numero? 7 36 37 Prima di fare i calcoli, individuate l'unico candidato possibile. Spiegate perché escludete gli altri. 7