25
By prof. Camuso

By prof. Camuso. … da fare … By prof. Camuso … da fare …

Embed Size (px)

Citation preview

Page 1: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Page 2: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

… da fare …

Page 3: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

… da fare …

Page 4: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

… da fare …

Page 5: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

… da fare …

Page 6: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

… da fare …

Page 7: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

… da fare …

Page 8: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

… da fare …

Page 9: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

1,34584562382827894226778899

54566756788788888678768835

12356788966908888678768835

1222227789338888867778768 54566756788788888678768835

Page 10: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Conversione da decimale a binario

NB: fissare prima quanti bit si vogliono dopo la virgola

Decidiamo per 5 bit …

Cioè decidiamo che 0,476 verrà rappresentato usando 5 bit

Page 11: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Conversione da decimale a binario

Primo step: si trasforma, come già sappiamo fare, la parte intera in binario:

Numero da convertire112,476

Page 12: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Conversione da decimale a binario

Secondo step: si trasforma in binario la parte decimale con l’algoritmo delle moltiplicazioni per due successive:

Page 13: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Conversione da decimale a binario

Terzo step: si uniscono i risultati:

Page 14: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Conversione da binario a decimaleSi usa ancora lo sviluppo polinomiale (somma potenze del due) ma usando potenze negative per la parte decimale:

Page 15: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Conversione da binario a decimale

A T T E N Z I O N E

A causa dell’approssimazione non è detto che ritrasformando in decimale un numero precedentemente convertito in binario si riottenga esattamente il numero di partenza!

Page 16: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Come già sperimentato per la rappresentazione dei numeri negativi,

anche per quelli con la virgola gli organismi internazionali(IEEE) hanno

preferito stabilire uno standar per rendere più efficienti i calcoli e più semplici gli

scambi di dati tra diverse apparecchiature. E’ nato lo standard

IEEE 754

Page 17: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

La notazione scientifica

25.000

25 * 1000 = 25 * 10^3 = 25 E +3 2,5 E +4 0,25 E +5 250.000 E -1

Page 18: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

La notazione scientifica

Page 19: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Page 20: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Page 21: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Page 22: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Nella forma normalizzata il primo bit è sempre 1.

Cioè se il numero fosse (0,00001010)2 lo si normalizzerebbe trasformandolo in (1,010)2 x 2-5

Questo consente di ‘eliminare’ gli zeri inutili che precedono la prima cifra (bit) significativa riuscendo così a rappresentare un numero di bit dopo la virgolasuperiore (miglioramento della precisione!)

Non solo: visto che nella forma normalizzata il bit alla sinistradella virgola è sempre 1, inutile rappresentarlo! Useremo tutti i bit per la parte dopo la virgola

Page 23: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Se rappresentassimo gli esponenti negativi in complemento a due riscontreremmo difficoltà nella comparazione deinumeri.

Ad esempio

Il primo numero rappresenta ½ ed il secondo 2. Ma ½ avrebbecome esponente una stringa di bit dal valore binario puro molto alto (11111111) e 2 avrebbe invece una stringa di bitdal valore binario puro molto più piccolo (00000001). Questorenderebbe difficile realizzare dei confronti diretti basati sulla grandezza dell’esponente

Page 24: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

Si preferisce allora sommare un valore (bias) che rende ancheil più piccolo esponente negativo positivo. Con 8 bit questo valore è 127. In questo modo:

Ovviamente ‘si pagherà’ poi un prezzo: per ottenere il ‘vero’numero dovremo sottrarre il bias dall’esponente; ma grazie alla facilitazione sui confronti (operazione costosa e molto frequente nei programmi) il bilancio è positivo

Page 25: By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso