表示为 Q16.16 整数的浮点数的范围是多少?

What is the range of a float represented as a Q16.16 integer?

当使用 int(number * 0x10000) 将浮点数编码为 fixed point integer Q16.16 时,什么是可以在不损失精度的情况下表示的浮点数范围?

范围是 32767 到 -32768 加上或减去最大的小数部分。所以

32767 + 65535/65536 到 - 32768 - 65535/65536。

然而,精度与范围不同。您的精度高达 31 位。

假设你用一个2的补码32位整数来表示一个Q15.16,整数的取值范围是[2^31-1, -2^31][2147483647, -2147483648],小数位数是2^-161/65536。因此定点值的取值范围是[2147483647/65536, -2147483648/65536]或大约[32767.99998, -32768].