1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla...

21
© 1999 Roberto Bisian Rappresentazione delle informazioni Occorre un codice Legato alla tecnologia usata Robustezza Semplicita’ Economicita’

Transcript of 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla...

Page 1: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

1 © 1999 Roberto Bisiani

Rappresentazione delle informazioni

Occorre un codice Legato alla tecnologia usata

• Robustezza• Semplicita’• Economicita’

Page 2: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

2 © 1999 Roberto Bisiani

Rappresentazione delle informazioni, cont.

Numeri• Rappresentazione decimale codificata• Rappresentazione posizionale

– Intera positiva e negativa– Floating point (virgola mobile)

Informazione alfanumerica• Codice ASCII (8 bit)• Unicode (16 bit)

Indirizzi• Rappresentazione posizionale

– Intera positiva

Page 3: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

3 © 1999 Roberto Bisiani

Numeri interi positivi

Quindi• Dati• Indirizzi

Rappresentazione posizionale in base 10:• Simboli uguali assumono valori diversi a seconda della

loro posizione nel numero• Somma delle potenze del 10 pesate per il valore del

simbolo corrispondente

– In un calcolatore viene solitamente usata la base 2. Vantaggi:

• Semplice da leggere• Aritmetica semplice (provare con i numeri “romani”)

Page 4: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

4 © 1999 Roberto Bisiani

Altre basi

Per convenienza si usano a volte altre base per manipolare esternamente le informazioni all’interno di un calcolatore.

Ottale (base 8)

Esadecimale (base 16)

MA LA RAPPRESENTAZIONE INTERNA NON CAMBIA!!!!

Page 5: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

5 © 1999 Roberto Bisiani

Altre basi

Non a caso sono basi “potenza di 2”• La conversione da e a binario e’ molto facile

Il loro uso e’ superato grazie alla potenza delle interfacce utente.

Page 6: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

6 © 1999 Roberto Bisiani

Conversioni

Base B decimaleBasta rappresentare usando una

rappresentazione decimale come potenze di B e poi fare i conti.

Es. 01001

0 * 24 + 1 * 23 + 0 * 22 + 0 * 21 + 1 * 20 = 8 + 1 = 9

Page 7: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

7 © 1999 Roberto Bisiani

Conversioni, cont.

Page 8: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

8 © 1999 Roberto Bisiani

Conversioni, cont.

Non sempre si puo’ rappresentare un numero finitamente in due basi diverse.

Esempio: il numero 0,357 base 10 non si puo` rappresentare finitamente in base 2: 0,357 * 2 = 0,714 e segno quindi 0 0,714 * 2 = 1,428 e segno quindi 1 0,428 * 2 = 0,856 e segno quindi 0 0,856 * 2 = 1,712 e segno quindi 1 0,712 * 2 = 1,424 e segno quindi 1 . . . . . . . . .

Page 9: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

9 © 1999 Roberto Bisiani

Numeri negativi

Segno e grandezza• Non efficente nell’implementare le operazioni

aritmentiche

Page 10: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

10 © 1999 Roberto Bisiani

Numeri negativi, cont.

Complemento a uno

Page 11: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

11 © 1999 Roberto Bisiani

Numeri negativi, cont.

Complemento a uno: due zeri, negazione facendo il complemento bit a bit

Page 12: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

12 © 1999 Roberto Bisiani

Numeri negativi, cont

Complemento a due: uno zero, negazione facendo complemento a 1 e somma di 1.

Page 13: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

13 © 1999 Roberto Bisiani

Operazioni aritmetiche

Numeri positivi: bit a bit dato che si tratta di una rappresentazione posizionale

Numeri negativi: le rappresentazioni in complemento permettono di utilizzare sempre la somma anche per sottrarre

Page 14: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

14 © 1999 Roberto Bisiani

Overflow

Overflow traboccamento• Si verifica se il risultato di un’operazione non

puo’ essere rappresentato con il numero di bit a disposizione

Nel caso di complemento a due (la norma):• Si verifica solo se i segni sono uguali

  -124+   10000100          67=   01000011        Segni discordi.        _____   ________        Risultato corretto.         -57    11000111

        70+     01000110        Segni concordi.        70=     01000110        Risultato scorretto (140 è fuori dal       ____     ________        range):OVERFLOW.       140      10001100

Page 15: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

15 © 1999 Roberto Bisiani

Numeri frazionari

Fixed point

Page 16: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

16 © 1999 Roberto Bisiani

Numeri frazionari

Floating point come la notazione scientifica esponenziale

Aumenta la gamma di valori rappresentabili Diminuisce e dimenta variabile la precisione:

• NON TUTTI I VALORI SONO RAPPRESENTABILI!!!!!!!

• Esempio: 1753.427 si puo’ rappresentare come:0.1753427*10^4=1.753427*10^3=...=1753427*10

^-3

Page 17: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

17 © 1999 Roberto Bisiani

Gamma di rappresentazione

Le possibilita’ di rappresentare un certo valore non sono uniformi in tutta la gamma di valori rappresentabili.

Page 18: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

18 © 1999 Roberto Bisiani

Una possibile rappresentazione floating

point Standard IEEE 754

• Singola precisione, 32 bit• Doppia precisione, 64

Page 19: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

19 © 1999 Roberto Bisiani

Standard floating point

I numeri sono sempre normalizzati, cioe’ la parte frazionaria e’ del tipo 1.xxxxxxxxx….

Il primo 1 non viene rappresentato perche’ implicito

Lo zero si rappresenta con un esponente e frazione a zero

Page 20: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

20 © 1999 Roberto Bisiani

Rappresentazione dell’esponente

Biased, cioe’ “spostata” di meta’ della precisione possibile

Esempio: se l’esponente e’ di 8 bit invece di rappresentare l’esponente in complemento (da –128 a +127) lo si rappresenta come:• Esponente reale + 128• Quindi l’esponente reale –128 viene

rappresentato come 0, l’esponente reale 0 come 128

Perche’? Per far si’ che due numeri floating point siano confrontabili in grandezza dagli stessi circuiti che confrontano i numeri interi.

Page 21: 1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.

21 © 1999 Roberto Bisiani

Esempio

A cosa corrisponde questo numero?

Il bit di segno è 1, mentre il campo esponente contiene 129 e il campo significant contiene 1x2^-2: il numero corrispondente alla notazione è quindi -1.01 x 2^2, che corrisponde al numero decimale -1.25 x 4=-5.0