Originariamente inviato da carminio
se prendo due numeri 1 e 3 rappresentati con un solo byte e dico che voglio il risultato della divisione rappresentato da un double otterrei:
1/3=0.3333333333333333.
Questo vale per 1 diviso 3.

Con quel ciclo stai effettuando tutte le operazioni comprese tra

-128 / 128

e

127 / 128

e ottieni i risultati double corretti con il numero di decimali necessari.

Per capire meglio

127 / 128 fa 0,9921875

e il risultato e' questo senza altri decimali ...

Per quanto riguarda la "logica" del programma inoltre, continuo a dirti che non ha senso leggere dei singoli byte (unsigned char) da un file in cui si pensa ci siano una serie di double ... ripeto, non devi leggere un singolo byte ma gli 8 byte dei vari double ...