Binary 16Bit
1. The problem is to represent the decimal number 57.625 in binary 16-bit floating-point format, showing the sign bit, exponent, and mantissa.
2. First, determine the sign bit: since 57.625 is positive, the sign bit is $0$.
3. Convert the integer part 57 to binary:
$$57_{10} = 111001_2$$
4. Convert the fractional part 0.625 to binary:
Multiply by 2:
$0.625 \times 2 = 1.25$ (integer part 1)
$0.25 \times 2 = 0.5$ (integer part 0)
$0.5 \times 2 = 1.0$ (integer part 1)
So, $0.625_{10} = 0.101_2$
5. Combine integer and fractional parts:
$$57.625_{10} = 111001.101_2$$
6. Normalize the binary number to the form $1.xxxxx \times 2^n$:
Move the binary point 5 places left:
$$111001.101_2 = 1.11001101 \times 2^5$$
7. For 16-bit floating-point (half precision), the format is:
- 1 sign bit
- 5 exponent bits (bias 15)
- 10 mantissa bits
8. Calculate the biased exponent:
$$\text{exponent} = 5 + 15 = 20$$
In binary:
$$20_{10} = 10100_2$$
9. Mantissa is the fractional part after the leading 1:
$$11001101$$ plus zeros to fill 10 bits:
$$1100110100$$
10. Assemble the 16-bit representation:
- Sign bit: $0$
- Exponent: $10100$
- Mantissa: $1100110100$
Final 16-bit binary representation:
$$0\ 10100\ 1100110100$$
This corresponds to the binary string:
$$0101001100110100$$