PDA

Visualizza la versione completa : [C] Mantissa


Eris
28-11-2005, 01:59
dato che non ho capito come convertire un numero in virgola mobile con relativa mantissa non che c' qlc che me lo pu spiegare oppure un programmino i c che lo faccia...?almeno faccio esercizi e guardo se son giusti...grazie!

king64
28-11-2005, 11:08
Per la rappresentazione in virgola mobile si pensato di definire lo standard IEEE 754 che contempla due tipi : un single precision a 32 bit e un double precision a 64 bit.
Posto che un numero N si puo' rappresentare come

N=S*B^E*M

dove S il segno, B la base di numerazione e M la mantissa in binario avremo

N=S*2^E*M

In riferimento al single precision avremo:1 bit per il segno S,che vale 0 se il numero positivo e 1 se negativo ,8 bit per l'esponente e 23 bit per la mantissa.Il valore dell'esponente dato dal reale esponente in forma normalizzata aumentato di 127 ; dove per forma normalizzata intendiamo una rappresentazione del tipo

a.bcde...*B^E

Poich in forma normalizzata binaria il primo termine della mantissa sempre uguale a 1 , tale valore sar omesso nel relativo campo (hidden one representation) per aumentare la rappresentazione dei valori. Considerato come esempio il decimale 7.542 avremo:

S=0
E=127+2=129=10000001
M=1.11100010101100000010000
per cui avremo :

0 10000001 11100010101100000010000

Eris
28-11-2005, 18:31
ah.


:oVVoVe:


E=127+2=129=10000001

non l'ho capito.ti ringrazio comunque sei molto gentile :)

oregon
28-11-2005, 18:34
127+2=129 in decimale

10000001 la rappresentazione binaria di 129

Eris
03-12-2005, 14:09
ecco ok...poi...

per calcolare la mantissa?

di rpeciso che devo fare?

murder eyes
03-12-2005, 15:49
Originariamente inviato da Eris
dato che non ho capito come convertire un numero in virgola mobile con relativa mantissa non che c' qlc che me lo pu spiegare oppure un programmino i c che lo faccia...?almeno faccio esercizi e guardo se son giusti...grazie!

basta fare un cast a int


int num_intero=(int)num_con_virgola

Eris
04-12-2005, 00:58
cosi me lo converte?manualmente come si fa a calcolare la mantissa?

Loading