Ofcourse you can't provide more decimals than the number of bits used by the float.
EDIT:
0.999 * 255 (8 bit) = 255 0.9999 * 255 (8 bit) = 255 0.999 * 4096 (12 bit) = 4092 0.9999 * 4096 (12 bit) = 4096