Ho bisogno di memorizzare i valori in un intervallo compreso tra -10000 e 10000. Ai margini dell'intervallo, la precisione necessaria non è molto alta (forse circa 64, vedrò come si adatta), intorno allo zero la precisione deve essere 1 o migliore.Ricerca di una libreria half float o quarter float
Purtroppo lo spazio è molto limitato, non più di 12 bit, meno sarebbe anche meglio. In senso stretto, anche half floats sono fuori. Esiste una libreria open source che gestisce alcuni formati float molto brevi con mantissa breve e lunghezza esponenziale? Come la mantissa a 8 bit e l'esponente a 3 bit.
È richiesta solo la conversione da/verso i formati più grandi, non viene eseguita alcuna operazione aritmetica.
Con un esponente di 3 bit si avrebbe una precisione minima di 128. – xanatos
Sì, molto probabilmente finirò per cucinare qualcosa da solo usando bitfield. Ma sono interessato a vedere le soluzioni che altri hanno trovato - se ce ne sono. – hirschhornsalz
@xanatos: solo se ci si attiene a una radice di 2. Se si passa a una radice di 10, ha solo bisogno di mantissa a 9 bit, radix a 2 bit. (Precisione di 39 vicino a 10000) –