我正在处理一个(大) float 数组,每个 float 占用 4 个字节。
考虑到我的 float 范围在 0 到 255 之间,有没有办法将每个 float 存储在小于 4 个字节中?
我可以对整个数组进行任意数量的计算。
我正在使用 C。
最佳答案
您需要多少精度?
您可以将每个 float 存储为 2 个字节,方法是将其表示为 unsigned short
(范围从 0 到 65,535)并在需要时将所有值除以 2^8
实际值。这与使用定点格式而不是浮点格式本质上是一样的。
但是,当您执行此操作时,您的精度限制为 1.0/(2^8) = 0.00390625
。
关于c - 存储固定范围 float 的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9274405/