Salve, ho un dubbio sulla risoluzione di questo esercizio:
Si consideri la notazione binaria in virgola mobile a 16 bit VM1 in cui (nell’ordine da sinistra a destra) si usa 1
bit per il segno (0=positivo), 6 bit per l’esponente (rappresentato in eccesso a 32 e nel quale le configurazioni fatte da tutti
0 e da tutti 1 sono riservate) e i rimanenti bit per la parte frazionaria della mantissa. Quando l’esponente è diverso da 0,
la mantissa è normalizzata tra 1 e 2. Quando invece vale 0, la mantissa è compresa tra 0 e 1 e si rappresentano numeri
denormalizzati, con esponente fisso a -31. Sia n il numero rappresentato in questa notazione dalla stringa esadecimale C737.
1.) Rappresentare nella notazione VM1 il numero $ m = n*2^-40 $ e indicare l’eventuale errore assoluto che si commette.
Il mio procedimento è questo:
trasformo C737 da esadecimale a binario e diventa:
$ 1100011100110111 $
dato che è negativo ne faccio il complemento a 2 :
$ 0011100011001001 $
quindi è :
$ -2^13(1,1100011001001) $
Quindi dico che m è :
$ m = -2^13*2^-40*(1,1100011001001) $ e dunque : $ m = -2^-27*(1,1100011001001) $
L' esercizio dice però che :
$ =-2^3(1.100110111) $ per C737
e
$ m=-2^−40*2^3*(1.100110111)=-2^−37(1.100110111)=-2^−31*2^-6(1.100110111)= -2^−31(0.00000100110111) $
quindi m:
$ m: 1 000000 000001001 $
non riesco a capire perchè. Potreste aiutarmi per favore?
Grazie in anticipo.