public static bool IsPositiveInfinity(Half half) { return(half.value == 0x7c00); }
public static bool IsNegativeInfinity(Half half) { return(half.value == 0xfc00); }
public static bool IsInfinity(Half half) { return((half.value & 0x7fff) == 0x7c00); }
public static bool IsNaN(Half half) { return((half.value & 0x7fff) > 0x7c00); }
public static Half Abs(Half half) { return(Half.ToHalf((ushort)(half.value & 0x7fff))); }
public static Half Negate(Half half) { return(Half.ToHalf((ushort)(half.value ^ 0x8000))); }
public static unsafe float HalfToSingle(Half half) { uint result = mantissaTable[offsetTable[half.value >> 10] + (half.value & 0x3ff)] + exponentTable[half.value >> 10]; return(*((float *)&result)); }