Returns this ConstantFloatInfo as a string for displaying.
Converted to a float as specified in the JVM Specification
if (bytes == 0x7f800000)
return ("CONSTANT_Float=\t" + "Positive Infinity");
if (bytes == 0xff800000)
return ("CONSTANT_Float=\t" + "Negative Infinity");
if (((bytes >= 0x7f800001) && (bytes <= 0x7fffffff)) ||
((bytes >= 0xff800001) && (bytes <= 0xffffffff)))
return ("CONSTANT_Float=\t" + "NaN");
int s = ((bytes >> 31) == 0) ? 1 : -1;
int e = ((bytes >> 23) & 0xff);
int m = (e == 0) ? (bytes & 0x7fffff) << 1 :
(bytes & 0x7fffff) | 0x800000;
float value = s * m * (2^(e - 150));
return ("CONSTANT_Float=\t" + value);