Informatica Generale Marzia Buscemi IMT Lucca

Slides:



Advertisements
Presentazioni simili
Dall’informazione al linguaggio macchina
Advertisements

Sistemi di numerazione
Informatica Generale Marzia Buscemi
Informatica Generale Susanna Pelagatti
Informatica Generale Marzia Buscemi IMT Lucca
Fondamenti di Informatica
/ fax
Trasmissione delle informazioni
Codifica dei Dati Idea: vogliamo rappresentare dati eterogenei utilizzando un linguaggio che l’elaboratore puo’ facilmente manipolare Essenzialmente vogliamo.
Vincenza Ferrara dicembre 2007 Fondamenti di Matematica e Informatica Laboratorio Informatica I anno a.a
Informatica Generale Marzia Buscemi
1 Informatica Generale Susanna Pelagatti Ricevimento: Mercoledì ore presso Dipartimento di Informatica, Via Buonarroti,
Codifica e Rappresentazione dell’informazione
1 Informatica Generale Marzia Buscemi IMT Lucca Ricevimento: Giovedì ore presso Dipartimento di Informatica, Largo.
Informatica Generale Susanna Pelagatti
(sommario delle lezioni in fondo alla pagina)
1 Informatica Generale Susanna Pelagatti Ricevimento: Mercoledì ore presso Dipartimento di Informatica, Via Buonarroti,
Sistemi di numerazione e codici
1 Sistemi Digitali. 2 Definizione Analog Waveform Time Voltage (V) 0 5 Digital Waveform Time Voltage (V)
Codifica dell’ Informazione non numerica
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
Informatica 3 Codifica binaria.
A.S.E.6.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 6 Complemento a MComplemento a M Rappresentazione di numeri con segnoRappresentazione di numeri.
A.S.E.5.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 5 Rappresentazione di numeri con segnoRappresentazione di numeri con segno –Modulo e segno (MS)
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Rappresentazione dellinformazione su calcolatore Anno Accademico 2009/2010.
Corso di Informatica (Programmazione)
Corso di Informatica per Giurisprudenza
Rappresentazioni numeriche
Rappresentazioni numeriche. Introduzione Un calcolatore elettronico dispone di uno spazio finito per memorizzare le cifre che esprimono un valore numerico.
La rappresentazione dellinformazione. 7-2 Digitalizzare linformazione Digitalizzare: rappresentare linformazione per mezzo di cifre (ad es: da 0 a 9)
Cos’è un problema?.
Gli esseri viventi ricevono informazione direttamente dal mondo circostante e dai propri simili attraverso i sensi (percezione). La percezione, tuttavia,
Codifica binaria Rappresentazione di numeri
Programma del corso Dati e loro rappresentazione Architettura di un calcolatore Sistemi operativi Linguaggi di programmazione Applicativi: - fogli elettronici.
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
Rappresentazione dell’informazione
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori (Reti Locali, Internet)
RAPPRESENTAZIONE DELL'INFORMAZIONE
Dalle potenze ai numeri binari
1 Mod. Informatica amica Esperto: prof. G. Sciacca Tutor: prof. R. Paparcone C1 - FSE – 629 Ann
Il computer: struttura fisica e struttura logica
Parte Terza: Codificare l’informazione
1101 = x 10 x 10 x x 10 x = CORRISPONDENZE
Che cos’è un sistema di numerazione?
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
RAPPRESENTAZIONE DELLE INFORMAZIONI
Codifica dei dati in un elaboratore elettronico
Codifica dell’informazione
I computer vengono utilizzati per automatizzare la soluzione di problemi di varia natura trattando le informazioni in entrata (DATI) eseguendo gli opportuni.
DIGITALIAZZAZIONE Di Alessio.
La rappresentazione delle informazioni in un computer
Programmazione Procedurale in Linguaggio C++
Informazione multimediale Lettere e numeri non costituiscono le uniche informazioni utilizzate dagli elaboratori ma ci sono sempre piu’ applicazioni che.
Rappresentazione dell’informazione nel calcolatore.
Rappresentazione Dati Codificare informazioni nel Computer
Codifica dell’informazione
Informatica Lezione 3 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Informatica Lezione 1 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali (corso TIE) CORSO LAUREA MAGISTRALE IN SCIENZE E TECNOLOGIE DELLE PRODUZIONI ANIMALI.
1 Informatica Generale Alessandra Di Pierro Ricevimento: Giovedì ore presso Dipartimento di Informatica, Via Buonarroti,
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Codifica binaria dell’informazione Marco D. Santambrogio – Ver. aggiornata al 11.
Rappresentazione della Informazione
1 Sommario lez 1 Concetti principali, domande ed esercizi Concetti principali –algoritmo, programma –struttura di controllo: condizionale (if …), iterativa.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Informatica Lezione 3 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Codifica binaria dell’informazione
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Codifica binaria dell’informazione Marco D. Santambrogio – Ver. aggiornata al 24.
Transcript della presentazione:

Informatica Generale Marzia Buscemi IMT Lucca email: buscemi@di.unipi.it Ricevimento: Giovedì ore 16.00-18.00 presso Dipartimento di Informatica, Largo Pontecorvo, 3 stanza 306 PS (lab. Global Computing) Tel. 050.2213102 o per posta elettronica Pagina web del corso: http://www.di.unipi.it/~buscemi/IG07.htm dddd

Di cosa abbiamo parlato finora L’architettura di Von Neumann Processore (CPU) Sottosistema di Interfaccia Memoria (RAM,dischi, etc) Mantiene Dati e Programmi E’ un esecutore capace di interpretare i singoli passi richiesti dai programmi (istruzioni elementari) Permette di comunicare dati e programmi alla macchina e di ottenere i risultati (tastiera, microf. stampante, schermo, etc)

Hardware - Software Struttura di un calcolatore hw e sw Processore Sottosistema di Interfaccia Memoria bus Mantiene Dati e Programmi Software

Algoritmi e programmi Dati di Elaborazione Dati di uscita ingresso Trasformazione dei dati di ingresso e esecuzione passi specificati da un opportuno algoritmo Codificati opportunamente Ovvero la descrizione dell’algoritmo secondo un linguaggio comprensibile al calcolatore Calcolatore (che conosce alcune azioni elementari: es confrontare due numeri, eseguire semplici operazioni aritmetiche Umano (che conosce l’algoritmo) programma

Codifica e Rappresentazione dell’informazione Cosa vedremo : Rappresentazione binaria Codifica dei numeri Codifica dei caratteri Codifica delle immagini Compressione dei dati Codifica dei suoni

Perché è necessario codificare le informazioni? Tutta l’informazione interna ad un calcolatore (digitale) deve essere codificata in forma numerica. La rappresentazione usata dai calcolatori è binaria, cioè fatta di sequenze di due soli numeri: 0 e 1 è facile realizzare dispositivi elettronici che distinguere fra due stati, molto meno se gli stati sono tanti L’unità elementare di informazione si chiama bit da‘binary digit’ I calcolatori digitali sono detti così perché qualunque informazione (numeri, testi, immagini, suoni, etc.) da essi manipolata è rappresentata in forma numerica (digit). I calcolatori pero’ non usano la rappresentazione numerica in base decimale perche’ questa sarebbe troppo costosa. Il minimo numero e’ 2 (1 non basta a dare un’informazione, es. semaforo).

Rappresentazione binaria (2) byte : la sequenza di 8 bit word (parola) : 2 o 4 byte (dipende dalla macchina) unità minima che può essere fisicamente letta o scritta nella memoria

Rappresentazione binaria (2) Vedremo prima come rappresentare (codificare) i numeri decimale come sequenze di 0 e 1 E poi discuteremo la rappresentazione di insiemi di oggetti finiti (caratteri, testi, immagini, suoni)

Notazione posizionale in base 10 Un numero (es. 5) può essere rappresentato in molti modi: cinque, five, 5, V, Rappresentazioni diverse hanno proprietà diverse moltiplicare due numeri in notazione romana è molto più difficile che moltiplicare due numeri in notazione decimale… Noi siamo abituati a lavorare con numeri rappresentati in notazione posizionale in base 10 Posizionale decimale: la posizione di una cifra nell’ambito di un numero ha un’importanza. base: indica il numero di simboli che si usano (arabi) La numerazione azteca ne usava 20.

Notazione posizionale in base 10 (2) La rappresentazione di un numero intero in base 10 è una sequenza di cifre scelte fra 0 1 2 3 4 5 6 7 8 9 es: 23, 118, 4 Il valore di una rappresentazione cN-1…c0 è dato da cN-1 * 10N-1 + cN-2 * 10N-2 ….+ c1 * 101 + c0 * 100 esempi : 23 = 2*10^1 + 3*10^0 = 20 + 3 118 = 1*10^2 + 1*10^1 + 8 * 10^0 = 100 + 10 + 8 23= 118 = ... ...

Notazione posizionale in base 10 (3) Vediamo alcune proprietà di questa notazione : Il massimo numero rappresentabile con N cifre è 99….9 (N volte 9, la cifra che vale di più), pari a 10N-1 es: su tre cifre il massimo numero rappresentabile è 999 pari a 103-1 =1000-1

Notazione posizionale in base 10 (4) Quindi se voglio rappresentare K diversi numeri (cioè 0 1 2 …K-1) mi servono almeno x cifre dove 10x è la più piccola potenza di 10 che supera K es : se voglio 25 numeri diversi mi servono almeno 2 cifre perché 102=100 è la più piccola potenza di 10 maggiore di 25 es : se voglio 110 numeri?

Notazione posizionale in base 2 La rappresentazione di un numero intero in base 2 è una sequenza di cifre scelte fra 0 1: es: 10, 110, 1 Il valore di una rappresentazione cN…c0 è dato da: cN-1 * 2N-1 + cN-2 * 2N-2 ….+ c1 * 21 + c0 * 20 esempi : 10 = 1*21 + 0 *20 = 2 110 = 1*22 + 1*21 + 0 * 20 = 4 + 2 + 0 = 6 1 = 1 *20 = 1 1001 = ? 1001 = 1*23 + 0*22 + 0*21 + 1* 20 = 8 + 0 + 0 + 1= 9

Notazione posizionale in base 2(2) Per la base due valgono proprietà analoghe a quelle viste per la base 10 : Il massimo numero rappresentabile con N cifre è 11….1 (N volte 1, la cifra che vale di più), pari a 2N-1 es: su tre cifre il massimo numero rappresentabile è? 111 pari a 23-1 = 8 - 1 = 7

Notazione posizionale in base 2(3) Per la base 2 valgono proprietà analoghe a quelle viste per la base 10 (cont.): Quindi se voglio rappresentare K diversi numeri (cioè 0 1 2 …K-1) mi servono almeno almeno x cifre dove 2x è la più piccola potenza di 2 che supera K es : se voglio 25 numeri diversi mi servono almeno 5 cifre perché 25=32 è la più piccola potenza di 2 maggiore di 25

Notazione posizionale in base 2(4) Somma binaria (somma mod 2): 0100 + 0110 = 1010 Qual è la somma di 01 e 111?

Conversione da base 10 a base 2 Dato un numero X si cerca la sua rappresentazione in base 2 cN-1…c0 Conversione per divisione : si divide ripetutamente X per 2 il resto ottenuto nella divisione i-esima è la i-esima cifra (ci) della rappresentazione binaria

Conversione da base 10 a base 2 (2) Come si converte X nella sua rappresentazione in base 2 cN…c0 usando il metodo della divisione Es : convertiamo il numero 13 13 / 2 da quoziente 6 e resto 1 (c0) 6 / 2 da quoziente 3 e resto 0 (c1) 3 / 2 da quoziente 1 e resto 1 (c2) 1 / 2 da quoziente 0 e resto 1 (c3) La rappresentazione di 13 è 1101 Qual è la rappr. di 10? E di 26? 10 = 1010 26 = 11010

Conversione da base 10 a base 2 (3) Nella conversione da base 10 a base 2 l’adozione della notazione posizionale permette di definire: MSB (most significant bit): il bit più a sinistra della rappresentazione LSB (least significant bit): il bit più a destra

Multipli delle unità fondamentali Multiplo Sigla Valore Kilo K 210=1024 Mega M 220=1024K Giga G 230=1024M

Rappresentazione di un insieme finito di oggetti Vogliamo rappresentare i giorni della settimana : {Lu, Ma, Me, Gio, Ve, Sa, Do} usando sequenze 0 e 1 Questo significa costruire un ‘codice’, cioè una tabella di corrispondenza che ad ogni giorno associa una opportuna sequenza In principio possiamo scegliere in modo del tutto arbitrario….

Rappresentazione di un insieme finito di oggetti (3) Una possibile codifica binaria per i giorni della settimana Di solito si usa un numero di bit uguale per tutti: il minimo indispensabile Di solito si usa un numero di bit uguale per tutti : il minimo indispensabile

Rappresentazione di un insieme finito di oggetti (4) Per rappresentare 7 oggetti diversi servono almeno 3 bit (minima potenza di due che supera 7 è 8= 23) quindi : 000 Lunedì 110 Domenica 001 Martedì 111 non ammesso 010 Mercoledì 011 Giovedì 100 Venerdì 101 Sabato

Rappresentazione di caratteri e stringhe I caratteri sono un insieme finito di oggetti e seguono la strategia vista per i giorni della settimana Perché due diversi calcolatori si possano parlare correttamente è necessario che usino lo stesso codice

Rappresentazione di caratteri e stringhe (2) Codifiche di uso comune : il codice ASCII (American Standard code For Information Interchange) su 7 (128=27) o 8 bit (256=28) il codice UNICODE su 16 bit (più recente, permette di rappresentare anche alfabeti diversi e simboli per la scrittura di lingua orientali) Le stringhe sono generalmente sequenze di caratteri terminate in modo particolare Unicode: il primo byte dice l’alfabeto, il secondo dice il carattere all’interno dell’alfabeto

Rappresentazione di immagini Le immagini sono un ‘continuo’ e non sono formate da sequenze di oggetti ben finiti come i numeri e i testi Bisogna quindi prima ‘discretizzarle’ ovvero trasformarle in un insieme di parti distinte che possono essere codificate separatamente con sequenze di bit Bisogna definire il termine informale di “elemento d’informazione” Insieme continuo di informazioni. Per il calcolatore invece tutto e’ discreto, cioe’ il numero di bit a disposizione e’ finito

Rappresentazione di immagini (2) Immagini ‘bitmap’ : 1. l’immagine viene scomposta in una griglia di elementi detti pixel (da picture element) 000000000000000000000000 000000000011111111000000 000000000010000010000000 000000000010000100000000 000000000010001000000000 000000000010010000000000 000000000010100000000000 000000000011000000000000 000000000010000000000000 Per memorizzare immagini fotografiche bisogna scomporre artificiosamente l’immagine In una girglia di elementi. Ciascuno dei suoi punti poi viene codificato usando uno o piu’ bit. Chiaramente la dimensione della griglia e il numero di bit per ciascun pixel danno la qualita’ Dell’immagine immagine codifica

Rappresentazione di immagini (3) Immagini ‘bitmap’ : 2. Ogni pixel è rappresentato da uno o più bit 000000000000000000000000 000000000011111111000000 000000000010000010000000 000000000010000100000000 000000000010001000000000 000000000010010000000000 000000000010100000000000 000000000011000000000000 000000000010000000000000 I bit rappresentano il colore di quel pixel Rappresentazione di un pixel

Rappresentazione di immagini (4) Rappresentazioni dei pixel : la rappresentazione in ‘toni di grigio’ : un byte per pixel, con 256 gradazioni di grigio per ogni punto (immagini bianco e nero), o più byte per pixel, per avere più gradazioni possibili rappresentazione a colori RGB (red, green,blu) : comunemente 3 byte per pixel che definiscono l’intensità di ciascun colore base. In questo modo ho circa 16 milioni di colori diversi definibili La profondita del pixel e’ il numero di bit che lo rappresentano.

Rappresentazione di immagini (5) Problema : la rappresentazione accurata di una immagine dipende dal numero di pixel (definizione) dalla codifica del pixel molta memoria, ad esempio : tipo imm. Defin. numero colori num.byte televisiva 720x625 256 440 KB SVGA 1024x768 65536 1.5MB foto 15000x10000 16milioni 430 MB

Rappresentazione di immagini (6) Quindi si cerca di ‘risparmiare’ memoria : con l’uso di una ‘tavolozza’ (palette) che contiene il sottoinsieme dei colori rappresentabili che compare in una foto ogni pixel codifica un indice all’interno della tavolozza con tecniche di compressione che non codificano ogni pixel in modo autonomo ma cercano di raggruppare le aree che hanno caratteristiche comuni Formati più usati : TIFF (tagged image file format), GIF (graphics interchange format), JPEG (Joint photographers expert group) Per cercare di risparmiare memoria si usa la palette, una