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

Post on 01-May-2015

248 views 6 download

Transcript of By prof. Camuso. … da fare … By prof. Camuso … da fare …

By prof. Camuso

By prof. Camuso

… da fare …

By prof. Camuso

… da fare …

By prof. Camuso

… da fare …

By prof. Camuso

… da fare …

By prof. Camuso

… da fare …

By prof. Camuso

… da fare …

By prof. Camuso

… da fare …

By prof. Camuso

1,34584562382827894226778899

54566756788788888678768835

12356788966908888678768835

1222227789338888867778768 54566756788788888678768835

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

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

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:

By prof. Camuso

Conversione da decimale a binario

Terzo step: si uniscono i risultati:

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:

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!

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

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

By prof. Camuso

La notazione scientifica

By prof. Camuso

By prof. Camuso

By prof. Camuso

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

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

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

By prof. Camuso