public static float FromShort(short v)
        {
            if (v == 0)
            {
                return(0);
            }

            var s = (v >> 15) & 1;
            var e = (v >> 10) & 31;
            var f = v & 1023U;

            var exp  = e - 15 + 127;
            var frac = (int)f << 13;

            var r = (uint)(s << 31 | exp << 23 | frac);

            var fts = new FloatConverter
            {
                Bytes = r
            };

            return(fts.Value);
        }
 public static float ToFloat(this short value)
 {
     return(FloatConverter.FromShort(value));
 }