96.7k views
4 votes
Hex value 0xC29C3480 represents an IEEE-754 single-precision (32 bit) floating-point number. Work out the equivalent decimal number. Show all workings (e.g. converting exponent and mantissa).

1 Answer

6 votes

Answer:

According to IEEE-754 standard,equivalent decimal of 32 bit floating point number is 78.1025390625

Step-by-step explanation:

To convert the 32 bit floating point number from hexadecimal to decimal, following steps will be completed.

1. Convert this hexadecimal value "C29C3480" into binary number. Each digit in hexadecimal will convert into 4 bits of binary.

There

C= 1100

2 = 0010

9 = 1001

C = 1100

3 = 0011

4= 0100

8 = 1000

0 = 0000

So the number will be converted as given below:

1100 0010 1001 1100 0011 0100 1000 0000

2. Arrange the bits in order

1 = Sign bit = 32nd bit

10000101 = Exponent bits = From 31st to 23rd bits

00111000011010010000000 = Fraction bits= From 22nd to 0th bit

As the 32nd bit, which is sign bit, is 1, so given number is negative.

3. Convert the Exponent bits into decimal values

10000101 = 1x2⁷+0x2⁶+0x2⁵+0x2⁴+0x2³+1x2²+0x2¹+1x2⁰

= 1x2⁷ + 1x2² + 1x2⁰

= 128 + 4 + 1 = 133

4. Calculate Exponent Bias

exponent bias = 2ⁿ⁻¹ - 1

there n is total number of bits in exponent value of 32 bit number, Now in this question n=8, because there are total 8 bits in exponent.

so, exponent bias = 2⁸⁻¹ - 1 = 2⁷-1= 128-1= 127

e = decimal value of exponent - exponent bias

e = 133 - 127 = 6

5. Convert Fraction part into Decimal

Mantissa=0x2⁻¹+0x2⁻²+1x2⁻³+1x2⁻⁴+1x2⁻⁵+0x2⁻⁶+0x2⁻⁷+0x2⁻⁸+0x2⁻⁹+1x2⁻¹⁰+1x2⁻¹¹+0x2⁻¹²+1x2⁻¹³+0x2⁻¹⁴+0x2⁻¹⁵+1x2⁻¹⁶+0x2⁻¹⁷+0x2⁻¹⁸+0x2⁻¹⁹+0x2⁻²⁰+0x2⁻²¹+0x2⁻²²+0x2⁻²³

= 1x2⁻³+1x2⁻⁴+1x2⁻⁵+1x2⁻¹⁰+1x2⁻¹¹+1x2⁻¹³+1x2⁻¹⁶

= 0.125 + 0.0625 + 0.03125 + 0.0009765625 + 0.00048828125 + 0.00012207031 + 0.00001525878

Mantissa = 0.22035217284

6. Convert the number into decimal

Decimal number = (-1)^s x (1+Mantissa) x 2^e

there

s is the sign bit which is 1,

and

e =6.

so,

decimal number = (-1)^1 x (1+0.22035217284 ) x 2⁶

= -1 x 1.22035217284 x 64

= -78.1025390625

User Varkhan
by
4.5k points