In: Computer Science
6a) (6 pts. each) Find the decimal represented by the 32-bit single precision floating point number for the hexadecimal value C47CD000.
32 bit single precision floating point number is divided into 3 parts.
1.Sign bit of size 1.
2.Exponent part have 8 bit.
3. 23 bits for mentissa.
To convert (C47CD000)16 in decimal.
Step1: Convert (C47CD000)16in binary form.
1100 0100 0111 1100 1101 0000 0000 0000.
Step 2: Here 1st bit represent sign bit.
If sign bit is 1 then number is negative.
if sign bit is 0 then number is positive.
Here 1st bit is 1 hence number is negative.
Step 3: Next 8 bit represent excess 127 exponent bit.
Convert next 8 bit into decimal form .
Convert (10001000)2 in decimal form.
1*2^7+0*2^6+0*2^5+0*2^4+1*2^3+0*2^2+0*2^1+0*2^0=(137)10
Subtract 127 from converted decimal exponent.
137-127=10.
Step 4:Denormalized last 23bits by adding 1 before 9 bit.
1.111 1100 1101 0000 0000 0000
Multiply by 2^10. By shifting decimal point towards right we get.
(1111 1100 110.10000 0000 0000)2
Convert above binary number into decimal no.
1*2^10+1*2^9+1*2^8+1*2^7+1*2^6+1*2^5+0*2^4+0*2^3+1*2^2+1*2^1+0*2^0+1*2^-1
=1024+512+256+128+64+32+0+0+4+2+1+0.5
=(2023.5)10
As the sign bit is 1 hence the no will be negative that is (-2023.5)10.
Decimal represented by the 32-bit single precision floating point number for the hexadecimal value C47CD000 is (-2023.5)10.