Dunque, nella memoria del computer vengono registrate sequenze di bit il processore elabora sequenze di bit.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Dunque, nella memoria del computer vengono registrate sequenze di bit il processore elabora sequenze di bit."

Transcript

1 Scopo della lezione è presentare le modalità di rappresentazione dei numeri utilizzate dalla macchina. Supponiamo di avere a disposizione un insieme di simboli, che chiamiamo alfabeto. Un esempio di alfabeto è l alfabeto usuale, {A, B,, Z}. Le macchine utilizzano un alfabeto ridotto composto da soli due simboli, {0, 1}. La relazione che associa ad una particolare combinazione di simboli un particolare dato è detta codice. Ad esempio l insieme ordinato di simboli GATTO codifica l idea di un animale con quattro zampe, una coda, etc Il codice mette dunque in relazione le successioni ordinate di simboli con il loro significato. E importante notare che non sono solo i simboli utilizzati a codificare per un determinato significato, ma anche il loro ordinamento: la parola GOATT non significa nulla nel codice lingua italiana, pur essendo costituita dagli stessi simboli della parola GATTO. I calcolatori utilizzano un particolare alfabeto per la codifica dell informazione. In particolare, nei calcolatori ogni tipo di informazione è rappresentato in forma binaria. L alfabeto dei calcolatori è dunque costituito da due soli simboli, per convenzione {0, 1}. Attenzione! 0 e 1 non rappresentano in questo caso due numeri, sono semplicemente i due simboli dell alfabeto utilizzato (quindi potrebbero essere sostituiti, ad esempio, da {TRUE, FALSE}, {ALTO, BASSO} etc, senza che cambi il significato della rappresentazione). Avendo a disposizione un singolo bit, è possibile rappresentare 2 stati diversi: 0 e 1. Con due bit, gli stati diventano quattro: 00, 01, 10, 11. Con 3 bit, 8 stati E facile dimostrare che, avendo a disposizione una stringa di n bit, è possibile rappresentare 2 n stati diversi. L alfabeto binario è utilizzato dai calcolatori per rappresentare l informazione in forma numerica. Ad esempio, il codice ASCII associa ad ogni carattere a, b, c,, A,, 5, etc., un numero compreso tra 0 e 255. In un file di testo troviamo una sequenza di numeri, ciascuno compreso tra 0 e 255, a ciascuno dei quali viene associato un carattere mediante la codifica ASCII. Ogni numero compreso tra 0 e 255 viene rappresentato utilizzando una stringa di 8 bit. Il processo completo per la comprensione di un file ASCII è dunque rappresentato da: leggi 8 bit, es converti in numero decimale, es. 35 identifica il carattere ASCII associato a quel numero, cioè #. In realtà il calcolatore non effettua la conversione binario numero decimale, bensì interpreta direttamente la stringa come il carattere # in formato ASCII. Dunque, per riassumere, noi utilizziamo i numeri utilizzando un alfabeto di dieci simboli, {0, 1,, 9}. Il computer rappresenta i numeri utilizzando un alfabeto di soli due simboli, {0, 1}. Un Bit è propriamente una binary digit, ovvero una cifra binaria, ovvero una cifra che può assumere solo due diversi valori. Il bit è anche l unità con cui viene misurato il contenuto di informazione (la quantità di informazione contenuta in un immagine o in qualche altro tipo di dato può essere quantificata utilizzando il bit come un unità di misura, ad esempio si può dire che un immagine contiene 3.4 bit di informazione teoria dell informazione di Shannon). L informazione contenuta in un bit è scarsa: può solo distinguere tra diversi stati. Mettendo insieme 8 bit in una sequenza ordinata è invece possibile ottenere 256 configurazioni diversi. Una sequenza di 8 bit è detta byte. Dunque, con un byte, è possibile rappresentare ad esempio i numeri che vanno da 0 a 255, oppure i numeri che vanno da -127 a 128, oppure un set di 256 caratteri diversi (come avviene nel caso della codifica ASCII). 8 bit è anche la lunghezza tipica delle celle di memoria. I computer sono costruiti per elaborare una quantità minima di informazione pari ad 1 byte. Infatti, si accede alle celle di memoria (che possono essere prelevate, portate nella CPU, elaborate, ricopiate in memoria) utilizzando 1 byte come porzione minima. Att.ne! Questo non significa che il PC non sia in grado, ad esempio, di modificare un singolo bit in memoria; significa che per farlo accede al byte che contiene il bit di interesse, lo porta in CPU, modifica il bit di interesse nel byte, ricopia il byte in memoria. Dunque, nella memoria del computer vengono registrate sequenze di bit il processore elabora sequenze di bit. Nelle memorie del computer troviamo sequenze di bit. La memoria è organizzata logicamente in celle indirizzabili, cioè: - Una cella contiene un certo numero di bit (sempre lo stesso per tutte le celle); il numero di bit contenuto dalla cella è detto lunghezza della cella; - La cella è indirizzabile, cioè ad ogni cella è associato un indirizzo che permette di accedere al contenuto della cella; - Anche gli indirizzi hanno una lunghezza in bit fissata; la lunghezza massima degli indirizzi determina la dimensione massima della memoria.

2 Ad esempio, se utilizziamo indirizzi di 4 bit, possiamo indirizzare 2 4 = 16 celle diverse. La massima dimensione della memoria è allora di 16 celle (sarebbe inutile costruire una memoria più grande in quanto una cella non indirizzabile è poco utile!). Per riassumere, sia B C il numero di byte contenuto in ogni cella di memoria (tipicamente, B C = 1, 2). Sia invece b i il numero di bit utilizzati come indirizzo delle celle di memoria (tipicamente b i = 16,, 64). Il numero massimo di celle di memoria indirizzabili è dato dal numero massimo di combinazioni che si possono ottenere con b i bit, cioè 2 bi. La dimensione massima della memoria in byte è allora data dal numero massimo di celle per la dimensione della singola cella, cioè 2 bi B C. Abbiamo già accennato al fatto che, nel calcolatore, la rappresentazione dell informazione è in forma numerica. Ad esempio, un suono viene rappresentato da una sequenza di intensità in decibel, es. [1, 2, 7, 9, 3, 1, 5, 5] db (decibel); per rappresentare tali numeri, il computer utilizza il sistema binario, dunque una possibile rappresentazione del suono nel computer sarà data da: [0001, 0010, 0111, 1001, 0001, 0101, 0101] (binario). Un numero è a tutti gli effetti un entità astratta indipendente dalla sua rappresentazione. Un insieme che contiente quattro elementi ha cardinalità pari a quattro; il numero cardinale quattro è dunque il concetto espresso da tutti gli insiemi con cardinalità quattro, ma le rappresentazioni possibili sono varie: quattro, 4, IV, ****, etc Analizziamo con maggiore dettaglio i diversi modi di rappresentare i numeri. Il sistema di numerazione romano è un esempio di rappresentazione additiva/sottrattiva: Il significato dei simboli che compongono un numero è indipendente dalla posizione in cui compaiono ( I significa 1, V significa 5 etc ). L ordine in cui compaiono i simboli determina il significato additivo / sottrattivo (ad esempio IX per 9, XI per 11). Il sistema posizionale è quello con cui siamo abituati a lavorare tutti i giorni. In Europa il sistema di numerazione arabico è stato introdotto nel Medioevo. E basato su una basi di dieci simboli (0, 1, 9) si parla di notazione in base dieci. Per notazione posizionale si intende il fatto che il valore di ogni cifra dipende dalla sua posizione nella successione di simboli che rappresenta il numero. Ad esempio, nel numero 1234 la cifra 3 indica 30, nel numero 3421 la cifra 3 indica Per passare dalla rappresentazione di un numero al suo significato utilizzando la notazione posizionale si opera come segue: 1735 = In generale, per un numero composto di n cifre si ha che: c n 1 c n 2...c 1 c 0 = c n 1 10 n 1 + c n 2 10 n c c Si chiamano cifre piú significative quelle associate ai pesi maggiori. La cifra c n 1 è la piú significativa e c 0 è la cifra meno significativa. La notazione posizionale è facilmente estendibile al caso in cui la base sia composta da un numero di simboli diverso da dieci. Ad esempio, il computer ha a disposizione i soli due simboli {0, 1}, dunque utilizza un sistema posizionale binario. Dal momento che la rappresentazione in binario può risultare dispendiosa in termini di spazio, sono spesso utilizzati anche il sistema in base 8, con simboli {0, 1, 7}, ed il sistema in base sedici, con simboli {0, 1,, 9, A, B,, F} per ottenere delle rappresentazioni più compatte. Se consideriamo un sistema in base B, abbiamo a disposizione le cifre da 0 a B-1. Mediante una stringa di n cifre in base B è possibile rappresentare B n numeri naturali, ad esempio quelli che vanno da 0 a B n -1. Se consideriamo la stringa di cifre cn c n 1...c 1 c 0 in base B, avremo: c n c n 1...c 1 c 0 = c n B n + c n 2 B n c 1 B 1 + c 0 B 0 = Σ i=0...n c i B i Ad esempio: = 7x x81 + 5x8 0 = , dove il pedice indica la base che viene utilizzata per la rappresentazione del numero. La rappresentazione posizionale presenta alcune proprietà notevoli: 1) un 1 seguito da n 0 rappresenta il numero B n. (Es. base 10: = 10 5 ; base 2: = 2 5 ). 2) n cifre massime rappresentano il numero B n -1 (base 10: = ; base 16: FFFFF = ).

3 E possibile per un numero passare dalla rappresentazione in una base ad un rappresentazione in una base diversa mediante l applicazione di alcune regole. La definizione già data permette di passare dalla base B alla base 10: c n c n 1...c 1 c 0 = c n B n + c n 2 B n c 1 B 1 + c 0 B 0 = Σ i=0...n c i B i (1) applichiamola ad alcuni esempi: In questo modo riusciamo a convertire un numero da base B a base 10. Soffermiamoci per un attimo sulla base binaria, che è utilizzata dai calcolatori. Sappiamo che utilizzando n cifre per rappresentare un numero in base B, possiamo esprimere ad esempio tutti i numero interi che vanno da 0 a Bn-1. Dunque, con n bit possiamo esprimere 2 n numeri naturali, quelli che vanno da 0 a 2 n -1. E pratica comune utilizzare 32 bit per la rappresentazione dei numeri naturali nei calcolatori, dunque il range rappresentabile è: = 4,294,967,295 4x10 9 Raddoppiando la lunghezza della stringa utilizzata per la rappresentazione, il massimo numero rappresentabile aumenta esponenzialmente. Ad esempio, utilizzando 64 bit il massimo numero rappresentabile diventerebbe: ,6x10 19 Per passare da un numero in base 2 allo stesso numero in base dieci è sufficiente applicare la definizione c n c n 1...c 1 c 0 = c n B n + c n 2 B n c 1 B 1 + c 0 B 0 = Σ i=0...n c i B i con B=2. Quindi, per fare un esempio: due = (1x x x x x x2 0 ) dieci = ( ) dieci = 44 dieci Abbiamo già detto che altre basi (es. base 8, base 16) vengono utilizzate per comodità di rappresentazione (la base due è troppo dispendiosa per la rappresentazione di grandi numeri su carta!). E comodo allora illustrare la procedura generale per passare da una base all altra. Per fare ciò introduciamo i due operatori div e mod, che rappresentano rispettivamente il risultato della divisione intera tra due numeri ed il resto della stessa divisione. Ad esempio: 5 div 2 = 2, 5 mod 2 = 1 (il che significa che il risultato di cinque diviso due è due con il resto di uno). Se utilizziamo la notazione posizionale in base B, le operazioni di divisione e modulo per B sono particolarmente semplici, infatti: - n mod B è rappresentato dalla cifra c 0 meno significativa della rappresentazione di n in base B; - n div B è rappresentato dalle cifre precedenti. Per fare un esempio in base 10: 1537 mod 10 = 7 è rappresentato da div 10 = 153 è rappresentato da 153

4 La rappresentazione emerge attraverso divisioni intere successive, raccogliendo i resti, che corrispondono alle cifre, partendo da quella meno significativa. Quindi 1537 mod 10 = 7, 1537 div 10 = 153 la prima cifra del numero, quella meno significativa, in base 10, è mod 10 = 3, 153 div 10 = 15 la seconda cifra del numero, in base 10, è 3 15 mod 10 = 5, 15 div 10 = 1 la terza cifra del numero, in base 10, è 5; 1 mod 10 = 1, 1 div 10 = 0 la quarta cifra del numero, quella più significativa, in base 10, è 1. Nel caso precedente abbiamo fatto una conversione da base 10 a base 10, quindi un operazione praticamente inutile, ma questo è servito per illustrare il processo di costruzione delle cifre di un numero. Lo stesso procedimento viene utilizzato per rappresentare un numero tra due basi diverse. Proviamo ad esempio a convertire lo stesso numero in base 8: 1537 mod 8 = 1, 1537 div 8 = 192 la prima cifra del numero, quella meno significativa, in base 8, è mod 8 = 0, 192 div 8 = 24 la seconda cifra del numero, in base 8, è 0 24 mod 8 = 0, 24 div 8 = 3 la terza cifra del numero, in base 8, è 0; 3 mod 8 = 3, 3 div 8 = 0 la quarta cifra del numero, quella più significativa, in base 8, è 3. Dunque, (1537)dieci = (3001)otto; Verifichiamo il risultato applicando la definizione: (3001)otto = ( )dieci = ( )dieci = (1537) dieci. Un ultimo esempio: convertire il numero 10 da base 10 a base mod 2 = 0, 10 div 2 = mod 2 = 1, 5 div 2 = mod 2 = 0, 2 div 2 = mod 2 = 1, 1 div 2 = 0 1 Dunque (10)dieci = (1010)due. Se supponiamo di avere a disposizione una rappresentazione a 6 bit, dobbiamo riempire anche i bit più significativi con degli zero, per ottenere (10)dieci = (001010)due. Come nel sistema decimale normale, infatti, gli zeri posti a sinistra del numero non contano! Avremmo comunque ottenuto lo stesso risultato continuando ad iterare le operazioni di dov / mod fino ad arrivare al sesto bit più significativo. In particolare, ci interessa passare dalla base dieci, con la quale siamo abituati a lavorare, alla base due (notazione binaria), utilizzata dai computer, e viceversa. In base due andremo a definire una rappresentazione per i numeri interi naturali, per gli interi relativi (con modulo e segno, con rappresentazione a complemento, con rappresentazione in eccesso), per i numeri reali Consideriamo il seguente problema: abbiamo a disposizione celle di memoria di 6 bit. Possiamo rappresentare l operazione 30+40? La risposta è no, perché con 6 bit riusciamo a rappresentare i numeri da 0 a 2 6, cioè da 0 a 64. Dal momento che 30+40=70, non abbiamo a disposizione bit sufficienti per rappresentare il numero 70! Si parla in tal caso di errore di overflow. Supponiamo poi di dover effettuare l operazione Come è possibile rappresentare il numero -10? E evidente che la notazione che stiamo utilizzando deve essere in qualche modo estesa per tenere conto di questi casi e di altre generalizzazioni (es. numeri con virgola ). Per rappresentare i numeri interi relativi, è possibile impiegare il primo bit della stringa per indicare il segno (0 per +, 1 per - ), Gli altri (n-1) bit vengono invece impiegati per rappresentare il valore assoluto del numero. Nella codifica con modulo e segno avremo allora: , , , Questa notazione ha il difetto di duplicare la rappresentazione del numero zero, cosa che può complicare l esecuzione ed il controllo delle operazioni aritmetiche! I numeri rappresentabili vanno da (2 n-1-1) a (2 n-1-1), con una doppia rappresentazione per lo zero.

5 Nel calcolatore è la ALU (Unità aritmetico logica) che si occupa di svolgere i calcoli. In particolare, la ALU si trova nella CPU (parte dei circuiti della CPU costituiscono la ALU). La ALU opera sui dati memorizzati nei registri della CPU. Ma i registri della CPU hanno lunghezza finita (cioè sono costituiti da un numero finito di bit), dunque come non è possibile effettuare calcoli con numeri grandi a piacere! Per poter effettuare i calcoli si utilizza un aritemtica finita: c è un numero massimo di cifre binarie disponibili, dunque c è un numero massimo di numeri rappresentabili I calcoli effettuati dal calcolatore saranno dunque caratterizzati dal fatto di avere una precisione finita. Per poter trattare i numeri interi con segno si fa ricorso alla notazione a complemento. Per poter trattare numeri reali, si fa ricorso alla notazione in virgola mobile. Siccome il numero di cifre massimo è limitato, la precisione raggiungibile nella rappresentazione dei numeri reali è limitata; abbiamo le seguenti precisioni, che spiegheremo poi: semplice (32 bit per numero), doppia (64 bit per numero), estesa (128 bit per numero). Dunque, per riassumere: i calcoli sono svolti dalla ALU, che è una parte della CPU. La ALU impiega i registri della CPU per rappresentare gli operandi. Dal momento che si utilizza una notazione binaria con un numero finito di bit, è necessario utilizzare un apposita notazione per la rappresentazione dei numeri (a complemento, a virgola mobile). Inoltre, la precisione nella rappresentazione dei numeri reali è finita. Cerchiamo di capire la distinzione tra l aritmetica usuale e l aritemica finita. Per fare ciò, pensiamo alla normale rappresentazione dei numeri sulla retta. Man mano che ci si sposta lungo la retta, la rappresentazione dei numeri continua a cambiare, dando luogo a infinite rappresentazioni per infiniti numeri. Con l aritmetica finita, abbiamo a disposizione un numero finito di rappresentazioni per i numeri. Continuando ad avanzare lungo la circonferenza, si ritorna alla notazione utilizzata per il numero 0! L orologio analogico è un ottimo esempio di rappresentazione con l aritmetica finita. Ogni posizione della lancetta dei minuti rappresenta un numero compreso tra 0 e 59. Quando la lancetta arriva alla posizione 59, lo step successivo la riporta alla configurazione corrispondente allo zero (c è un numero finito di numeri rappresentabili). Introduciamo allora la notazione in complemento: per l orologio si parlerà di complemento a 60. Con la notazione normale diciamo che sono le 3,15 oppure le 3,45. Con la notazione in complemento a 60, diciamo che sono le 3,15 oppure Che manca un quarto alle quattro. Quindi, con la notazione in complemento, vogliamo esprimere i numeri positivi e negativi centrati attorno allo zero. In particolare, supponiamo di avere a disposizione una stringa di 3 bit. Sappiamo che, utilizzando tre bit, possiamo esprimere i numeri che vanno da 0 ad 8 utilizzando la notazione convenzionale del sistema binario. Se utilizziamo invece una notazione a complemento, possiamo esprimere i numeri che vanno da -4 a +3 (ovviamente sono sempre 8 i livelli diversi che possono essere espressi). Concentriamoci allora sul sistema binario, e quindi sulla notazione in complemento a due. Con n bit possono essere rappresentati gli interi compresi tra 2 n-1 e +(2 n-1 1). Esempio: con 4 bit possono essere rappresentati gli interi compresi tra e +( ) cioè tra -8 e +7. Nella rappresentazione in complemento a due, dati n bit, un numero negativo x si rappresenta con il valore binario corrispondente a 2 n -x. Att.ne! Questo modo di operare è diverso dall utilizzare il primo bit per esprimere il segno (per verificare, si controlli il significato della stringa 100). In particolare, con la notazione in complemente a due, scompare la doppia notazione per lo zero. Il primo bit rappresenta il segno del numero, con lo zero considerato come numero positivo. Supponiamo di dover rappresentare alcuni numeri in complemento a due utilizzando 3 bit. I numeri rappresentabili andranno da -4 a +3. Per i numeri positivi (quelli da 0 a +3) la notazione è analoga a quella binaria. Per i numeri negativi, dovremmo considerare (2 n -x), cioè: il numero x in complemento a due si ottiene come differenza tra 2 n e x, dove n è il numero di bit impiegato. Quindi:

6 Per passare dalla rappresentazione in complemento a due al valore reale del numero dovremo applicare la formula inversa, cioè: - se il primo bit è pari a zero, significa che stiamo rappresentano un numero compreso tra 0 e 2 n-1-1; la formula di conversione da adottare è quella classica per la conversione da sistema binario a sistema decimale; - se il primo bit è pari a uno, significa che stiamo rappresentando un numero negativo compreso tra -2 n-1 e -1; per calcolare il valore del numero, dobbiamo prima convertire da sistema binario a decimale, quindi togliere 2 n dal risultato. Esempio: Ma a cosa serve la notazione in complemento a due? A parte il fatto di poter rappresentare i numeri negativi, la notazione serve per semplificare i calcoli, infatti per effettuare la somma tra due numeri (positivi o negativi) non c è bisogno di fare alcun controllo sul segno! L operazione di somma e differenza sono eseguibili con la stessa sequenza di operazioni. Dunque anche la circuiteria è semplificata: con lo stesso circuito possiamo fare somma e differenza! Attenzione però: dal momento che l intervallo di numeri rappresentabili è finito, non tutte le operazioni sono possibili. Ad esempio, se utilizziamo 8 bit per la rappresentazione dei numeri, possiamo utilizzare la notazione binaria convenzionale per rappresentare i numeri tra 0 e 255. Ma cosa succede su cerchiamo di eseguire l operazione = 260? Oppure, utilizzando la notazione in complemento a due, i numeri rappresentabili vanno da -128 a Cosa succede se cerchiamo di eseguire l operazione = - 300? In entrambi i casi si ha un errore di overflow, cioè il risultato dell operazione non è corretto in quando non rientra nel range dei numeri rappresentabili! Questi errori sono a volte insidiosi: spesso la CPU non controlla che il risulato sia corretto, quindi è possibile che si ottenga il risultato non corretto! Ad esempio, si può ottenere = 0!!! Questo perché (255) 10 = ( ) 2, (1) 10 = ( ) 2, il risultato corretto dell operazione sarebbe (256) 10 = ( ) 2, ma siccome usiamo stringhe di 8 bit, il primo bit a sinistra del risultato non viene considerato dalla CPU, e si ottiene dunque (0) 10 = ( ) 2!!! Con la notazione in complemento ci si può accorgere facilmente degli errori di overflow. Questi possono accadere solo quando sommiamo due numeri positivi o due numeri negativi. Se si verifica un overflow, la somma di due numeri positivi dà un numero negativo e viceversa. Dunque è sufficiente verificare il bit di segno per capire se c è stato l overflow! Abbiamo visto che, con la rappresentazione in complemento a due, siamo in grado di rappresentare numeri interi relativi centrati attorno allo zero. E possibile un ulteriore rappresentazione per i numeri centrati attorno allo zero: si parla allora di rappresentazione in eccesso (o biased). Utilizzando questa convenzione, ad esempio l intervallo rappresentato [-N... +(N- 1)] traslato di +N viene rappresentato dai numeri [0... 2N-1] in formato binario. Il valore N è detto eccesso o bias. Ad esempio, usando stringhe di 8 bit, avremo una rappresentazione in eccesso 128. Dunque, per rappresentare il numero x in eccesso, adotteremo la stringa binaria normalmente associata ad (x+128). Quindi , ,

7 Abbiamo dunque spiegato come rappresentare numeri interi positivi e negativi. Ma come rappresentare i numeri con la virgola? La prima soluzione possibile è quella di estendere la definizione (1), andando a considerare i numeri dopo la virgola con gli esponenti negativi, cioè: Rappresentazione con la virgola in base B: c n..c 0,c -1..c -k = c n B n c 0 B 0 + c -1 B c -k B -k Esempio: 123,45=1x x x x x10-2 Come per i numeri senza virgola, anche in questo caso per passare dalla notazione in base B alla notazione in base 10 è sufficiente applicare la definizione. Infatti, consideriamo il numero 101,01 in base 2 e calcoliamo il suo valore in base 10: 101,01 = = /4 = 5,25 Vediamo allora come è possibile cambiare base per basi arbitrarie e numeri con la virgola. Per la parte intera del numero, si procede come già visto in precedenza (iterando la sequenza di mod e div). Per la parte frazionaria, si procede come segue. Si noti la seguente proprietà: sia 0, c -1 c -2..c -k = n ; allora c -1, c -2..c -k = B. n Esempio in decimale: 0, = 2,31 moltiplicando per la base 10 emerge la cifra 2 Per far emergere c -1 basta moltiplicare per B; moltiplicando ancora per B emergerà c -2 e così via Dunque, se dobbiamo convertire m,n alla base B, prima convertiamo m ottenendo la parte intera in base B; poi, iterativamente, moltiplichiamo n per la base B, nella parte intera di nb troviamo la cifra decimale in che ci interessa in base B Cioè: pp Si riporta la parte frazionaria della riga precedente parte fraz. base prod. 0,25 2 = 0,5 0,5 2 = 1,0 0 2 = Si riporta la parte intera come cifra parte intera 0 1 Contiene le cifre binarie, nell ordine Ci si arresta quando la parte frazionaria si azzera o quando abbiamo un numero di cifre abbastanza elevato 0,25 = 0,01 E interessante notare che alcuni numeri sono periodici in una base, ma non in un altra! Sebbene interessante, la notazione con virgola non è utilizzata nei calcolatori. Bisognerebbe infatti specificare dove è posizionata la virgola. Per capire come vengono rappresentati i numeri con virgola nei calcolatori, introduciamo la notazione scientifica. In notazione scientifica, un numero viene rappresentato come ± m x 10 p,es = 1,23x108. Più in generale, se la base è B, avremo: ± m x B p Il coefficiente m è detto MANTISSA. Per convenzione, m è un numero in cui la parte intera è composta da una singola cifra (la convenzione è quindi di inserire implicitamente la virgola decimale subito dopo la prima cifra). p è detto CARATTERISTICA, è l esponente a cui elevare la base B. Abbiamo a questo punto a disposizione tutti gli strumenti per la rappresentazione dei numeri nei calcolatori. La base utilizzata sarà ovviamente la base binaria. Adottando la notazione scientifica possiamo rappresentare numeri con virgola, dal momento che nella mantissa la virgola è sempre posizionata dopo la prima cifra. La regole di conversione sono già state

8 spiegate. La rappresentazione binaria dei numeri reali che usa la notazione scientifica è detta rappre-sentazione in virgola mobile (floating point). Con questa rappresentazione otterremo una precisione diversa a seconda del numero di cifre impiegato per la rappresentazione della mantissa e dell esponente (dobbiamo sempre ricordare che il numero di bit a disposizione è limitato, dunque il numero di cifre a disposizione per rappresentare esponente e mantissa è limitato e sarà necessario un compromesso sulla precisione). Dunque in notazione scientifica con virgola mobile abbiamo a che fare con numeri del tipo: mee, dove m è la mantissa, E indica la fine della mantissa e l inizio dell esponenziale, e è la caratteristica, dunue mee = m B e. Ad esempio, il numero si scrive E2, cioè (Questo per fare un esempio in base 10). Se consideriamo la base 2, avremo per esempio: 101,001 1,01001 E 10 = ( ) 2 2. Per utilizzare i numeri in virgola mobile nel calcolare, abbiamo bisogno di specificare la dimensione della mantissa e della caratteristica. Tipicamente i numeri in virgola mobile vengono rappresentati nel calcolatore utilizzando una stringa di 32 bit (4 byte) si parla di rappresentazione in virgola mobile a precisione singola. I 32 bit sono organizzati in ordine come segue: - 1 bit per il segno (0=+, 1=-); - 8 bit per l esponente, rappresentato in eccesso 127 (dunque i valori per l esponente andranno da 0 a 255) bit per la parte frazionaria della mantissa F (la mantissa in toto è 1,F). Per convenzione, il primo numero della mantissa è 1 (si dice che il numero è normalizzato). Adottando questa regola, si evitano rappresentazioni multiple per i numeri! Consideriamo ad esempio la stringa Il primo bit è il bit di segno segno meno; - I bit dal secondo al settimo indicano l esponente in eccesso 127 ( )due = (132)10, dunque l esponente è = 5, dunque la parte esoinenziale del numero sarà I bit dal decimo al trentaduesimo indicano la parte frazionaria della mantissa, dunque avremo ; Dunque il numero rappresentato sarà: ( ) 2 5. La rappresentazione esatta di alcuni numeri richiederebbe un numero infinito di cifre, Es. 1/3=0, , π=3, Un problema analogo sorge per numeri con valore assoluto molto grande o molto piccolo, in cui il numero di cifre richiesto non sarebbe infinito, ma molto elevato. In questi casi possiamo considerare solo le cifre piú significative. Qualunque sia la codifica scelta, la rappresentazione dei numeri nel calcolatore è soggetta ad approssimazioni. Il limitato numero di cifre disponibili nella mantissa porta ad errori di arrotondamento quando si debbano rappresentare numeri con una mantissa più lunga. Tali approssimazioni si propagano nel corso della esecuzione delle operazioni causando errori numerici anche importanti. Il calcolo numerico è la disciplina che studia le proprietà dell esecuzione delle operazioni tramite calcolatore e valuta l entità degli errori introdotti durante l esecuzione

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale Analogico vs. Digitale LEZIONE II La codifica binaria Analogico Segnale che può assumere infiniti valori con continuità Digitale Segnale che può assumere solo valori discreti Analogico vs digitale Il computer

Dettagli

Scopo della lezione è presentare le modalità di rappresentazione dei numeri utilizzate dalla macchina.

Scopo della lezione è presentare le modalità di rappresentazione dei numeri utilizzate dalla macchina. Scopo della lezione è presentare le modalità di rappresentazione dei numeri utilizzate dalla macchina. Supponiamo di avere a disposizione un insieme di simboli, che chiamiamo alfabeto. Un esempio di alfabeto

Dettagli

Codice binario. Codice. Codifica - numeri naturali. Codifica - numeri naturali. Alfabeto binario: costituito da due simboli

Codice binario. Codice. Codifica - numeri naturali. Codifica - numeri naturali. Alfabeto binario: costituito da due simboli Codice La relazione che associa ad ogni successione ben formata di simboli di un alfabeto il dato corrispondente è detta codice. Un codice mette quindi in relazione le successioni di simboli con il significato

Dettagli

Informatica. Informatica. Grandezze digitali. Grandezze analogiche

Informatica. Informatica. Grandezze digitali. Grandezze analogiche LEZIONI 2 e 3 Rappresentazione dell informazione 1 LEZIONI 2 e 3 Rappresentazione dell informazione 2 Informatica Informatica informatica informazione mezzi fisici logici LA RAPPRESENTAZIONE DELLE INFORMAZIONI

Dettagli

La codifica digitale

La codifica digitale La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore

Dettagli

Somma di numeri binari

Somma di numeri binari Fondamenti di Informatica: Codifica Binaria dell Informazione 1 Somma di numeri binari 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 Esempio: 10011011 + 00101011 = 11000110 in base e una base Fondamenti di

Dettagli

La codifica. dell informazione

La codifica. dell informazione 00010010101001110101010100010110101000011100010111 00010010101001110101010100010110101000011100010111 La codifica 00010010101001110101010100010110101000011100010111 dell informazione 00010010101001110101010100010110101000011100010111

Dettagli

Unità aritmetica e logica

Unità aritmetica e logica Aritmetica del calcolatore Capitolo 9 Unità aritmetica e logica n Esegue le operazioni aritmetiche e logiche n Ogni altra componente nel calcolatore serve questa unità n Gestisce gli interi n Può gestire

Dettagli

Aritmetica dei Calcolatori Elettronici

Aritmetica dei Calcolatori Elettronici Aritmetica dei Calcolatori Elettronici Prof. Orazio Mirabella L informazione Analogica Segnale analogico: variabile continua assume un numero infinito di valori entro l intervallo di variazione intervallo

Dettagli

Rappresentazione di dati: numerazione binaria. Appunti per la cl. 3 Di A cura del prof. Ing. Mario Catalano

Rappresentazione di dati: numerazione binaria. Appunti per la cl. 3 Di A cura del prof. Ing. Mario Catalano Rappresentazione di dati: numerazione binaria Appunti per la cl. 3 Di A cura del prof. Ing. Mario Catalano Rappresentazione binaria Tutta l informazione interna ad un computer è codificata con sequenze

Dettagli

Sistemi di Numerazione Binaria

Sistemi di Numerazione Binaria Sistemi di Numerazione Binaria BIN.1 Numeri e numerali Numero: entità astratta Numerale : stringa di caratteri che rappresenta un numero in un dato sistema di numerazione Lo stesso numero è rappresentato

Dettagli

Rappresentazione dei Dati

Rappresentazione dei Dati Parte II I computer hanno una memoria finita. Quindi, l insieme dei numeri interi e reali che si possono rappresentare in un computer è necessariamente finito 2 Codifica Binaria Tutti i dati usati dagli

Dettagli

Aritmetica dei Calcolatori

Aritmetica dei Calcolatori Aritmetica dei Calcolatori Luca Abeni e Luigi Palopoli February 25, 2015 Informazione nei Computer Un computer è un insieme di circuiti elettronici......in ogni circuito, la corrente può passare o non

Dettagli

Codifica. Rappresentazione di numeri in memoria

Codifica. Rappresentazione di numeri in memoria Codifica Rappresentazione di numeri in memoria Rappresentazione polinomiale dei numeri Un numero decimale si rappresenta in notazione polinomiale moltiplicando ciascuna cifra a sinistra della virgola per

Dettagli

Rappresentazione dell Informazione

Rappresentazione dell Informazione Rappresentazione dell Informazione Rappresentazione delle informazioni in codice binario Caratteri Naturali e Reali positivi Interi Razionali Rappresentazione del testo Una stringa di bit per ogni simbolo

Dettagli

Aritmetica dei Calcolatori

Aritmetica dei Calcolatori Aritmetica dei Calcolatori Luca Abeni e Luigi Palopoli February 18, 2016 Informazione nei Computer Un computer è un insieme di circuiti elettronici......in ogni circuito, la corrente può passare o non

Dettagli

Calcolatori Elettronici Parte III: Sistemi di Numerazione Binaria

Calcolatori Elettronici Parte III: Sistemi di Numerazione Binaria Anno Accademico 2001/2002 Calcolatori Elettronici Parte III: Sistemi di Numerazione Binaria Prof. Riccardo Torlone Università di Roma Tre Numeri e numerali! Numero: entità astratta! Numerale: stringa di

Dettagli

Rappresentazione dei numeri reali in un calcolatore

Rappresentazione dei numeri reali in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri reali in un calcolatore Lezione 3 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione di numeri

Dettagli

Rappresentazione dell informazione

Rappresentazione dell informazione Rappresentazione dell informazione Problema che coinvolge aspetti filosofici Interessa soprattutto distinguere informazioni diverse Con un solo simbolo è impossibile Pertanto l insieme minimo è costituito

Dettagli

Rappresentazioni numeriche

Rappresentazioni numeriche Rappresentazioni numeriche Un numero è dotato di un valore una rappresentazione La rappresentazione di un numero è il sistema che utilizziamo per indicarne il valore. Normalmente è una sequenza (stringa)

Dettagli

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point)

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point) Rappresentazione di Numeri Reali Un numero reale è una grandezza continua Può assumere infiniti valori In una rappresentazione di lunghezza limitata, deve di solito essere approssimato. Esistono due forme

Dettagli

Sistemi di numerazione

Sistemi di numerazione Sistemi di numerazione Introduzione Un sistema di numerazione è un sistema utilizzato per esprimere i numeri e possibilmente alcune operazioni che si possono effettuare su di essi. Storicamente i sistemi

Dettagli

La "macchina" da calcolo

La macchina da calcolo La "macchina" da calcolo Abbiamo detto che gli algoritmi devono essere scritti in un linguaggio "comprensibile all'esecutore" Se il nostro esecutore è il "calcolatore", questo che linguaggio capisce? che

Dettagli

Rappresentazione dei dati in memoria

Rappresentazione dei dati in memoria Rappresentazione dei dati in memoria La memoria Una memoria deve essere un insieme di oggetti a più stati. Questi oggetti devono essere tali che: le dimensioni siano limitate il tempo necessario per registrare

Dettagli

Sistemi di Numerazione Binaria

Sistemi di Numerazione Binaria Sistemi di Numerazione Binaria NB.1 Numeri e numerali Numero: entità astratta Numerale : stringa di caratteri che rappresenta un numero in un dato sistema di numerazione Lo stesso numero è rappresentato

Dettagli

Codifica di informazioni numeriche

Codifica di informazioni numeriche Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Codifica di informazioni numeriche Fondamenti di Informatica - Ingegneria Elettronica Leonardo Querzoni querzoni@dis.uniroma1.it

Dettagli

Informazione binaria: - codici binari, notazione binaria/ottale/esadecimale -

Informazione binaria: - codici binari, notazione binaria/ottale/esadecimale - Informazione binaria: - codici binari, notazione binaria/ottale/esadecimale - Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin ... Algoritmi,

Dettagli

Sistemi di Numerazione Binaria

Sistemi di Numerazione Binaria Sistemi di Numerazione Binaria NB.1 Numeri e numerali Numero: entità astratta Numerale : stringa di caratteri che rappresenta un numero in un dato sistema di numerazione Lo stesso numero è rappresentato

Dettagli

modificato da andynaz Cambiamenti di base Tecniche Informatiche di Base

modificato da andynaz Cambiamenti di base Tecniche Informatiche di Base Cambiamenti di base Tecniche Informatiche di Base TIB 1 Il sistema posizionale decimale L idea del sistema posizionale: ogni cifra ha un peso Esempio: 132 = 100 + 30 + 2 = 1 10 2 + 3 10 1 + 2 10 0 Un numero

Dettagli

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

Un ripasso di aritmetica: Conversione dalla base 10 alla base 2 Un ripasso di aritmetica: Conversione dalla base 10 alla base 2 Dato un numero N rappresentato in base dieci, la sua rappresentazione in base due sarà del tipo: c m c m-1... c 1 c 0 (le c i sono cifre

Dettagli

Aritmetica dei Calcolatori

Aritmetica dei Calcolatori Aritmetica dei Calcolatori Nicu Sebe March 14, 2016 Informatica Nicu Sebe 1 / 34 Operazioni su Bit Bit Scienza della rappresentazione e dell elaborazione dell informazione Abbiamo visto come i computer

Dettagli

Codifica binaria. Rappresentazioni medianti basi diverse

Codifica binaria. Rappresentazioni medianti basi diverse Codifica binaria Rappresentazione di numeri Notazione di tipo posizionale (come la notazione decimale). Ogni numero è rappresentato da una sequenza di simboli Il valore del numero dipende non solo dalla

Dettagli

Decimale, binaria,esadecimale

Decimale, binaria,esadecimale Decimale, binaria,esadecimale Introduzione Tutti i sistemi di numerazione sono posizionali nel senso che le cifre assumono un determinato valore a seconda della posizione occupata all interno del numero

Dettagli

I sistemi di numerazione. Informatica - Classe 3ª, Modulo 1

I sistemi di numerazione. Informatica - Classe 3ª, Modulo 1 I sistemi di numerazione Informatica - Classe 3ª, Modulo 1 1 La rappresentazione interna delle informazioni ELABORATORE = macchina binaria Informazione esterna Sequenza di bit Spett. Ditta Rossi Via Roma

Dettagli

La codifica. dell informazione

La codifica. dell informazione La codifica dell informazione (continua) Codifica dei numeri Il codice ASCII consente di codificare le cifre decimali da 0 a 9 fornendo in questo modo un metodo per la rappresentazione dei numeri Il numero

Dettagli

Rappresentazione e Codifica dell Informazione

Rappresentazione e Codifica dell Informazione Rappresentazione e Codifica dell Informazione Capitolo 1 Chianese, Moscato, Picariello, Alla scoperta dei fondamenti dell informatica un viaggio nel mondo dei BIT, Liguori editore. Sistema di numerazione

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi Codice BCD Prima di passare alla rappresentazione dei numeri relativi in binario vediamo un tipo di codifica che ha una certa rilevanza in alcune applicazioni: il codice BCD (Binary Coded Decimal). È un

Dettagli

Conversione di base. Conversione decimale binario. Si calcolano i resti delle divisioni per due

Conversione di base. Conversione decimale binario. Si calcolano i resti delle divisioni per due Conversione di base Dato N>0 intero convertirlo in base b dividiamo N per b, otteniamo un quoto Q 0 ed un resto R 0 dividiamo Q 0 per b, otteniamo un quoto Q 1 ed un resto R 1 ripetiamo finché Q n < b

Dettagli

Corso di Architettura degli Elaboratori

Corso di Architettura degli Elaboratori Corso di Architettura degli Elaboratori Codifica dell'informazione: Numeri Binari (lucidi originali della Prof.ssa Zacchi e del Prof. Balossino, rivisti dal Prof. Baldoni) 1 Codifica dell'informazione?

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Sistemi di Numerazione Francesco Fontanella I sistemi di numerazione Sono stati inventati i SISTEMI DI NUMERAZIONE: Forme di rappresentazione dei numeri

Dettagli

Un quadro della situazione. Lezione 6 Aritmetica in virgola mobile (2) e Codifica dei caratteri. Dove siamo nel corso. Organizzazione della lezione

Un quadro della situazione. Lezione 6 Aritmetica in virgola mobile (2) e Codifica dei caratteri. Dove siamo nel corso. Organizzazione della lezione Un quadro della situazione Lezione 6 Aritmetica in virgola mobile (2) e Codifica dei caratteri Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output

Dettagli

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012 Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 I numeri reali Sommario Conversione dei numeri reali da base 10 a base B Rappresentazione dei numeri reali Virgola fissa Virgola mobile (mantissa

Dettagli

Informatica di Base - 6 c.f.u.

Informatica di Base - 6 c.f.u. Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica di Base - 6 c.f.u. Anno Accademico 27/28 Docente: ing. Salvatore Sorce Rappresentazione delle informazioni Sistemi di

Dettagli

Lezioni di Informarica. Prof. Giovanni Occhipinti

Lezioni di Informarica. Prof. Giovanni Occhipinti Lezioni di Informarica Prof. Giovanni Occhipinti 23 settembre 2010 2 Indice 1 La codifica delle Informazioni 5 1.1 Il sistema binario........................... 5 1.1.1 Conversione da binario a decimale.............

Dettagli

CONVERSIONE BINARIO DECIMALE NB: Convertire in decimale il numero binario N = N =

CONVERSIONE BINARIO DECIMALE NB: Convertire in decimale il numero binario N = N = NOTAZIONE BINARIA, OTTALE, ESADECIMALE CODIFICA DI NUMERI INTERI RELATIVI 1 CONVERSIONE BINARIO DECIMALE Convertire in decimale il numero binario N = 101011.1011 2 N = 1 2 5 + 0 2 4 + 1 2 3 + 0 2 2 + 1

Dettagli

Moltiplicazione. Divisione. Multipli e divisori

Moltiplicazione. Divisione. Multipli e divisori Addizione Sottrazione Potenze Moltiplicazione Divisione Multipli e divisori LE QUATTRO OPERAZIONI Una operazione aritmetica è quel procedimento che fa corrispondere ad una coppia ordinata di numeri (termini

Dettagli

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno. Trasferimento Ambiente esterno Controllo Informatica Mario Pavone - Dept. Mathematics & Computer Science - University of Catania mpavone@dmi.unict.it Cos è l Informatica La scienza della rappresentazione

Dettagli

Calcolo numerico e programmazione Rappresentazione dei numeri

Calcolo numerico e programmazione Rappresentazione dei numeri Calcolo numerico e programmazione Rappresentazione dei numeri Tullio Facchinetti 16 marzo 2012 10:54 http://robot.unipv.it/toolleeo Rappresentazione dei numeri nei calcolatori

Dettagli

Lezione 3. I numeri relativi

Lezione 3. I numeri relativi Lezione 3 L artimetcia binaria: i numeri relativi i numeri frazionari I numeri relativi Si possono rappresentare i numeri negativi in due modi con modulo e segno in complemento a 2 1 Modulo e segno Si

Dettagli

I.4 Rappresentazione dell informazione

I.4 Rappresentazione dell informazione I.4 Rappresentazione dell informazione Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Ottobre 13, 2015 Argomenti Introduzione 1 Introduzione 2 3 L elaboratore Introduzione

Dettagli

La codifica binaria. Informatica B. Daniele Loiacono

La codifica binaria. Informatica B. Daniele Loiacono La codifica binaria Informatica B Introduzione Il calcolatore usa internamente una codifica binaria ( e ) per rappresentare: i dati da elaborare le istruzioni dei programmi eseguibili Fondamenti di codifica

Dettagli

Codifica binaria dei dati numerici: i numeri naturali

Codifica binaria dei dati numerici: i numeri naturali Codifica binaria dei dati numerici: i numeri naturali Sistema Sistema di numerazione posizionale in base b c k c k 1 c 0 rappresenta c k b k + c k 1 b k 1 + + c 0 b 0 b=10 1101 dieci indica 1 10 3 + 1

Dettagli

Codifica dell informazione

Codifica dell informazione Programmazione M-Z Ingegneria e Scienze Informatiche - Cesena A.A. 2016-2017 Codifica dell informazione Pietro Di Lena - pietro.dilena@unibo.it There are 10 types of people in this world: understand binary

Dettagli

Rappresentazione numeri reali

Rappresentazione numeri reali Rappresentazione numeri reali I numeri reali rappresentabili in un calcolatore sono in realtà numeri razionali che approssimano i numeri reali con un certo grado di precisione Per rappresentare un numero

Dettagli

Sistemi di Elaborazione delle Informazioni

Sistemi di Elaborazione delle Informazioni Sistemi di Elaborazione delle Informazioni Rappresentazione dell Informazione 1 Il bit Si consideri un alfabeto di 2 simboli: 0, 1 Che tipo di informazione si può rappresentare con un bit? 2 Codifica binaria

Dettagli

La Rappresentazione dell Informazione

La Rappresentazione dell Informazione La Rappresentazione dell Informazione Maurizio Palesi Sommario In questo documento sarà trattato il modo in cui, in un calcolatore, vengono rappresentati i vari generi di informazione (testi, numeri interi,

Dettagli

La codifica binaria. Fondamenti di Informatica. Daniele Loiacono

La codifica binaria. Fondamenti di Informatica. Daniele Loiacono La codifica binaria Fondamenti di Informatica Introduzione q Il calcolatore usa internamente una codifica binaria (0 e 1) per rappresentare: i dati da elaborare (numeri, testi, immagini, suoni, ) le istruzioni

Dettagli

Numeri frazionari. sistema posizionale. due modi: virgola fissa virgola mobile. posizionale, decimale

Numeri frazionari. sistema posizionale. due modi: virgola fissa virgola mobile. posizionale, decimale Numeri frazionari sistema posizionale due modi: virgola fissa virgola mobile posizionale, decimale 0,341=tre decimi più quattro centesimi più un millesimo cifre dopo la virgola: decimi centesimi millesimi

Dettagli

Numeri reali. Notazione scientifica (decimale) Floating Point. Normalizzazione. Esempi. Aritmetica del calcolatore (virgola mobile)

Numeri reali. Notazione scientifica (decimale) Floating Point. Normalizzazione. Esempi. Aritmetica del calcolatore (virgola mobile) Numeri reali Aritmetica del calcolatore (virgola mobile) Capitolo 9 1 Numeri con frazioni Posso essere rappresentati anche in binario Es.: 1001.1010 = 2 4 + 2 0 +2-1 + 2-3 =9.625 Quante cifre dopo la virgola?

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale LEZIONE 2 Rappresentazione delle informazioni: numeri e caratteri 1 Codice La relazione che associa ad ogni successione ben formata di simboli di

Dettagli

Rappresentazione. Notazione in complemento a 2. Complemento a due su 3 e 4 bit Complemento a due

Rappresentazione. Notazione in complemento a 2. Complemento a due su 3 e 4 bit Complemento a due Rappresentazione degli interi Notazione in complemento a 2 n bit per la notazione Nella realta n=32 Per comodita noi supponiamo n=4 Numeri positivi 0 si rappresenta con 4 zeri 0000 1 0001, 2 0010 e cosi

Dettagli

Abilità Informatiche e Telematiche

Abilità Informatiche e Telematiche Abilità Informatiche e Telematiche (Laurea Triennale + Laurea Magistrale) Marco Pedicini mailto:marco.pedicini@uniroma3.it Corso di Laurea Magistrale in Informazione, Editoria e Giornalismo, Università

Dettagli

Somma di numeri floating point. Algoritmi di moltiplicazione e divisione per numeri interi

Somma di numeri floating point. Algoritmi di moltiplicazione e divisione per numeri interi Somma di numeri floating point Algoritmi di moltiplicazione e divisione per numeri interi Standard IEEE754 " Standard IEEE754: Singola precisione (32 bit) si riescono a rappresentare numeri 2.0 10 2-38

Dettagli

Laboratorio di Informatica (Chimica)

Laboratorio di Informatica (Chimica) Laboratorio di Informatica (Chimica) Lezione 05: Codifica delle Informazioni. Walter Cazzola Dipartimento di Informatica e Comunicazione Università à degli Studi di Milano. e-mail: cazzola@dico.unimi.it

Dettagli

Fondamenti di Programmazione. Sistemi di rappresentazione

Fondamenti di Programmazione. Sistemi di rappresentazione Fondamenti di Programmazione Sistemi di rappresentazione Numeri e numerali Il numero cinque 5 V _ Π 五 Arabo Romano Maya Greco Cinese Il sistema decimale Sistemi posizionali 1 10 3 + 4 10 2 + 9 10 1 + 2

Dettagli

Codifica dell informazione

Codifica dell informazione Codifica dell informazione Gli algoritmi sono costituiti da istruzioni (blocchi sequenziali, condizionali, iterativi) che operano su dati. Per trasformare un programma in una descrizione eseguibile da

Dettagli

Lo schema seguente presenta le principali informazioni che devono essere rappresentate mediante codici binari.

Lo schema seguente presenta le principali informazioni che devono essere rappresentate mediante codici binari. Rappresentaziione delllle iinformaziionii allll iinterno dii un ellaboratore I calcolatori digitali sono sistemi in grado di elaborare e archiviare nelle loro memorie esclusivamente grandezze binarie.

Dettagli

Rappresentazione dei numeri interi in un calcolatore

Rappresentazione dei numeri interi in un calcolatore Corso di Calcolatori Elettronici I Rappresentazione dei numeri interi in un calcolatore Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle

Dettagli

Sistemi di Numerazione

Sistemi di Numerazione Sistemi di Numerazione Corso Università Numeri e Numerali Il numero cinque 5 V _ Π Arabo Romano Maya Greco Cinese Il sistema decimale Sistemi Posizionali 1 10 3 + 4 10 2 + 9 10 1 + 2 10 0 Sistemi Posizionali

Dettagli

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

Un ripasso di aritmetica: Conversione dalla base 10 alla base 2 Un ripasso di aritmetica: Conversione dalla base 10 alla base 2 Dato un numero N rappresentato in base dieci, la sua rappresentazione in base due sarà del tipo: c m c m-1... c 1 c 0 (le c i sono cifre

Dettagli

Rappresentazione dei Numeri

Rappresentazione dei Numeri Rappresentazione dei Numeri Rappresentazione dei Numeri Il sistema numerico binario è quello che meglio si adatta alle caratteristiche del calcolatore Il problema della rappresentazione consiste nel trovare

Dettagli

Cap. 2 - Rappresentazione in base 2 dei numeri interi

Cap. 2 - Rappresentazione in base 2 dei numeri interi Cap. 2 - Rappresentazione in base 2 dei numeri interi 2.1 I NUMERI INTERI RELATIVI I numeri relativi sono numeri con il segno: essi possono essere quindi positivi e negativi. Si dividono in due categorie:

Dettagli

Esercitazioni su rappresentazione dei numeri e aritmetica. Interi unsigned in base 2

Esercitazioni su rappresentazione dei numeri e aritmetica. Interi unsigned in base 2 Esercitazioni su rappresentazione dei numeri e aritmetica Salvatore Orlando & Marta Simeoni Interi unsigned in base 2 Si utilizza un alfabeto binario A = {0,1}, dove 0 corrisponde al numero zero, e 1 corrisponde

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori Rappresentazione dell Informazione Barbara Masucci Cosa studiamo oggi Ø Un moderno elaboratore è un sistema elettronico digitale programmabile Ø Il suo comportamento è flessibile

Dettagli

ESERCITAZIONE. Uso dell accessorio calcolatrice per

ESERCITAZIONE. Uso dell accessorio calcolatrice per ESERCITAZIONE Uso dell accessorio calcolatrice per Passaggi fra basi diverse Aritmetica assoluta nelle dimensioni byte, word, Dword, Qword Complemento a 2 e in eccesso Cenni su floating point 1 numeri

Dettagli

Rappresentazione numeri relativi e reali

Rappresentazione numeri relativi e reali Rappresentazione numeri relativi e reali Lezione 2 Rappresentazione numeri relativi Rappresentazione numeri reali Rappresentazione in Modulo e Segno Rappresentare separatamente il segno (mediante un bit

Dettagli

SISTEMI DI NUMERAZIONE

SISTEMI DI NUMERAZIONE Rev.20/10/2014 Pag.n. 1 Indice SISTEMI DI NUMERAZIONE IL SISTEMA DECIMALE SISTEMI POSIZIONALI NUMERAZIONE BINARIA CONVERSIONE BINARIO-DECIMALE (Metodo del polinomio) CONVERSIONE DECIMALE-BINARIO (Metodo

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale ESERCITAZIONE 2 Uso dell accessorio calcolatrice e conversione di numeri 1 Uso dell accessorio calcolatrice per Passaggi fra basi diverse Aritmetica

Dettagli

Interi positivi e negativi

Interi positivi e negativi Definizioni: numerali e numeri Un numerale è solo una stringa di cifre Un numerale rappresenta un numero solo se si specifica un sistema di numerazione Lo stesso numerale rappresenta diversi numeri in

Dettagli

Fondamenti di Programmazione. Sistemi di rappresentazione

Fondamenti di Programmazione. Sistemi di rappresentazione Fondamenti di Programmazione Sistemi di rappresentazione Numeri e numerali Il numero cinque 5 V _ Π 五 Arabo Romano Maya Greco Cinese Sistemi posizionali 1 10 3 + 4 10 2 + 9 10 1 + 2 10 0 Sistemi posizionali

Dettagli

Algoritmi Istruzioni che operano su dati. Per scrivere un programma è necessario. che l esecutore automatico sia in grado di.

Algoritmi Istruzioni che operano su dati. Per scrivere un programma è necessario. che l esecutore automatico sia in grado di. Codifica di Dati e Istruzioni Fondamenti di Informatica Codifica dell Informazione Prof. Francesco Lo Presti Algoritmi Istruzioni che operano su dati Per scrivere un programma è necessario rappresentare

Dettagli

Rappresentazione di numeri relativi (interi con segno) Rappresentazione di numeri interi relativi (con N bit) Segno e Valore Assoluto

Rappresentazione di numeri relativi (interi con segno) Rappresentazione di numeri interi relativi (con N bit) Segno e Valore Assoluto Rappresentazione di numeri relativi (interi con segno) E possibile estendere in modo naturale la rappresentazione dei numeri naturali ai numeri relativi. I numeri relativi sono numeri naturali preceduti

Dettagli

Introduzione e Nozioni di Base. Prof. Thomas Casali

Introduzione e Nozioni di Base. Prof. Thomas Casali Università degli studi di Bologna Facoltà di Economia Sede di Forlì Introduzione e Nozioni di Base Corso di Laurea in Economia di Internet Prof. Thomas Casali thomas@casali.biz La rappresentazione digitale

Dettagli

Sommario. I Sistemi di numerazione Posizionale e non Posizionale (1/2) I Codici. I Codici I Sistemi di numerazione Posizionali e non posizionali

Sommario. I Sistemi di numerazione Posizionale e non Posizionale (1/2) I Codici. I Codici I Sistemi di numerazione Posizionali e non posizionali Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario I Codici I Sistemi di numerazione

Dettagli

12BHD - Informatica - soluzioni Appendice B del quaderno di testo - v. 1.05

12BHD - Informatica - soluzioni Appendice B del quaderno di testo - v. 1.05 Esercizio 1 Effettuare i seguenti cambiamenti di codifica su numeri naturali: 123 10 = x 2 [ 1111011 2 ] 011101 2 = x 10 [ 29 10 ] 23 10 = x 5 [ 43 5 ] 123 5 = x 10 [ 38 10 ] 123 10 = x H [ 7B 16 ] A1

Dettagli

Lezione 2. La conoscenza del mondo

Lezione 2. La conoscenza del mondo Lezione 2 Analogico/Digitale Il sistema binario L aritmetica binaria La conoscenza del mondo Per poter parlare (ed elaborare) degli oggetti (nella visione scientifica) si deve poter assegnare a questi

Dettagli

Informatica. Informatica. Grandezze digitali. Grandezze analogiche

Informatica. Informatica. Grandezze digitali. Grandezze analogiche LEZIONI 2 e 3 Rappresentazione dell informazione 1 LEZIONI 2 e 3 Rappresentazione dell informazione 2 Informatica Informatica informatica informazione mezzi mezzi fisici procedure LA RAPPRESENTAZIONE DELLE

Dettagli

Calcolatori: Sistemi di Numerazione

Calcolatori: Sistemi di Numerazione Calcolatori: Sistemi di Numerazione Sistemi di Numerazione: introduzione In un Calcolatore, i Dati e le Istruzioni di un Programma sono codificate in forma inaria, ossia in una sequenza finita di e. Un

Dettagli

Richiami sulla rappresentazione dei numeri in una base fissata

Richiami sulla rappresentazione dei numeri in una base fissata Silvia Bonettini - Appunti di Analisi Numerica 1 Richiami sulla rappresentazione dei numeri in una base fissata In questo capitolo si vogliono richiamare i concetti principali riguardanti la reppresentazione

Dettagli

La codifica binaria. Informatica B. Daniele Loiacono

La codifica binaria. Informatica B. Daniele Loiacono La codifica binaria Informatica B Introduzione Il calcolatore usa internamente una codifica binaria (0 e 1) per rappresentare: i dati da elaborare (numeri, testi, immagini, suoni, ) le istruzioni dei programmi

Dettagli

Programmazione I Paolo Valente /2017. Lezione 6. Notazione posizionale

Programmazione I Paolo Valente /2017. Lezione 6. Notazione posizionale Lezione 6 Notazione posizionale Ci sono solo 10 tipi di persone al mondo: quelle che conoscono la rappresentazione dei numeri in base 2, e quelle che non la conoscono... Programmazione I Paolo Valente

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Università degli Studi di Brescia Elementi di Informatica e Programmazione Rappresentazione dell'informazione Docente: Marco Sechi E mail: marco.sechi@unibs.it Vers. 16/08/2017 Dipartimento di Ingegneria

Dettagli

Conversione binario-decimale. Interi unsigned in base 2. Esercitazioni su rappresentazione. dei numeri e aritmetica

Conversione binario-decimale. Interi unsigned in base 2. Esercitazioni su rappresentazione. dei numeri e aritmetica Esercitazioni su rappresentazione dei numeri e aritmetica Salvatore Orlando & Marta Simeoni Interi unsigned in base 2 I seguenti numeri naturali sono rappresentabili usando il numero di bit specificato?

Dettagli

Il Modello di von Neumann (2) Prevede 3 entità logiche:

Il Modello di von Neumann (2) Prevede 3 entità logiche: Introduzione all Architettura degli Elaboratori Sommario Macchina di von Neumann Esecuzione dei programmi Rappresentazione dei dati Dati numerici Dati alfabetici 1 2 Il Modello di von Neumann (1) L architettura

Dettagli

Rappresentazione dell informazione. Argomenti trattati: Codifica: Teoria generale. Proprietà di una codifica:

Rappresentazione dell informazione. Argomenti trattati: Codifica: Teoria generale. Proprietà di una codifica: Rappresentazione dell informazione I calcolatori gestiscono dati di varia natura: testi, immagini, suoni, filmati, nei calcolatori rappresentati con sequenze di bit: mediante un opportuna codifica presentiamo

Dettagli

Calcolatori Elettronici Parte II: Sistemi di Numerazione Binaria. Prof. Riccardo Torlone Università di Roma Tre

Calcolatori Elettronici Parte II: Sistemi di Numerazione Binaria. Prof. Riccardo Torlone Università di Roma Tre Calcolatori Elettronici Parte II: Sistemi di Numerazione Binaria Prof. Riccardo Torlone Università di Roma Tre Unità di misura Attenzione però, se stiamo parlando di memoria: n 1Byte = 8 bit n 1K (KiB:

Dettagli

APPUNTI DI INFORMATICA

APPUNTI DI INFORMATICA APPUNTI DI INFORMATICA Per il biennio di liceo scientifico scienze applicate Sommario Il calcolo binario... 2 Numerazione Decimale... 2 Numerazione Binaria... 2 Conversione Binario -> Decimale... 2 Conversione

Dettagli

Argomenti trattati: Rappresentazione dell informazione. Proprietà di una codifica: Codifica: Teoria generale

Argomenti trattati: Rappresentazione dell informazione. Proprietà di una codifica: Codifica: Teoria generale Rappresentazione dell informazione I calcolatori gestiscono dati di varia natura: testi, immagini, suoni, filmati, nei calcolatori rappresentati con sequenze di bit: mediante un opportuna codifica presentiamo

Dettagli

Rapida Nota sulla Rappresentazione dei Caratteri

Rapida Nota sulla Rappresentazione dei Caratteri TECNOLOGIA DIGITALE TECNOLOGIA DIGITALE (segue) CPU, memoria centrale e dispositivi sono realizzati con tecnologia elettronica digitale Dati ed operazioni vengono codificati tramite sequenze di bit 8 bit

Dettagli

Algebra di Boole e porte logiche

Algebra di Boole e porte logiche Algebra di Boole e porte logiche Dott.ssa Isabella D'Alba Corso PENTEST MIND PROJECT 2016 Algebra di Boole e porte logiche (I parte) Algebra di Boole I Sistemi di Numerazione (Posizionali, Non posizionali)

Dettagli