Question

Convert the decimal real number -100.756 to IEEE 754 single precision (32 bit) floating point in...

  1. Convert the decimal real number -100.756 to IEEE 754 single precision (32 bit) floating point in hexadecimal representation of the binary value  (Hint: consider the field or bit-by-bit structure of an IEEE 754 value to decide which of the choices is correct, without necessarily constructing the full encoding of the value.)

    32C98312

    42C98312

    C2C98312

    52C98313

0 0
Add a comment Improve this question Transcribed image text
Answer #1



c) C2C98312

-100.756
Converting 100.756 to binary
   Convert decimal part first, then the fractional part
   > First convert 100 to binary
   Divide 100 successively by 2 until the quotient is 0
       > 100/2 = 50, remainder is 0
       > 50/2 = 25, remainder is 0
       > 25/2 = 12, remainder is 1
       > 12/2 = 6, remainder is 0
       > 6/2 = 3, remainder is 0
       > 3/2 = 1, remainder is 1
       > 1/2 = 0, remainder is 1
   Read remainders from the bottom to top as 1100100
   So, 100 of decimal is 1100100 in binary
   > Now, Convert 0.75600000 to binary
       > Multiply 0.75600000 with 2.    Since 1.51200000 is >= 1. then add 1 to result
       > Multiply 0.51200000 with 2.    Since 1.02400000 is >= 1. then add 1 to result
       > Multiply 0.02400000 with 2.    Since 0.04800000 is < 1. then add 0 to result
       > Multiply 0.04800000 with 2.    Since 0.09600000 is < 1. then add 0 to result
       > Multiply 0.09600000 with 2.    Since 0.19200000 is < 1. then add 0 to result
       > Multiply 0.19200000 with 2.    Since 0.38400000 is < 1. then add 0 to result
       > Multiply 0.38400000 with 2.    Since 0.76800000 is < 1. then add 0 to result
       > Multiply 0.76800000 with 2.    Since 1.53600000 is >= 1. then add 1 to result
       > Multiply 0.53600000 with 2.    Since 1.07200000 is >= 1. then add 1 to result
       > Multiply 0.07200000 with 2.    Since 0.14400000 is < 1. then add 0 to result
       > Multiply 0.14400000 with 2.    Since 0.28800000 is < 1. then add 0 to result
       > Multiply 0.28800000 with 2.    Since 0.57600000 is < 1. then add 0 to result
       > Multiply 0.57600000 with 2.    Since 1.15200000 is >= 1. then add 1 to result
       > Multiply 0.15200000 with 2.    Since 0.30400000 is < 1. then add 0 to result
       > Multiply 0.30400000 with 2.    Since 0.60800000 is < 1. then add 0 to result
       > Multiply 0.60800000 with 2.    Since 1.21600000 is >= 1. then add 1 to result
       > Multiply 0.21600000 with 2.    Since 0.43200000 is < 1. then add 0 to result
       > Multiply 0.43200000 with 2.    Since 0.86400000 is < 1. then add 0 to result
       > Multiply 0.86400000 with 2.    Since 1.72800000 is >= 1. then add 1 to result
       > Multiply 0.72800000 with 2.    Since 1.45600000 is >= 1. then add 1 to result
       > Multiply 0.45600000 with 2.    Since 0.91200000 is < 1. then add 0 to result
       > Multiply 0.91200000 with 2.    Since 1.82400000 is >= 1. then add 1 to result
       > Multiply 0.82400000 with 2.    Since 1.64800000 is >= 1. then add 1 to result
       > Multiply 0.64800000 with 2.    Since 1.29600000 is >= 1. then add 1 to result
       > Multiply 0.29600000 with 2.    Since 0.59200001 is < 1. then add 0 to result
       > Multiply 0.59200001 with 2.    Since 1.18400002 is >= 1. then add 1 to result
       > Multiply 0.18400002 with 2.    Since 0.36800003 is < 1. then add 0 to result
       > Multiply 0.36800003 with 2.    Since 0.73600006 is < 1. then add 0 to result
       > Multiply 0.73600006 with 2.    Since 1.47200012 is >= 1. then add 1 to result
       > Multiply 0.47200012 with 2.    Since 0.94400024 is < 1. then add 0 to result
       > Multiply 0.94400024 with 2.    Since 1.88800049 is >= 1. then add 1 to result
       > Multiply 0.88800049 with 2.    Since 1.77600098 is >= 1. then add 1 to result
       > Multiply 0.77600098 with 2.    Since 1.55200195 is >= 1. then add 1 to result
       > Multiply 0.55200195 with 2.    Since 1.10400391 is >= 1. then add 1 to result
       > Multiply 0.10400391 with 2.    Since 0.20800781 is < 1. then add 0 to result
       > Multiply 0.20800781 with 2.    Since 0.41601562 is < 1. then add 0 to result
       > Multiply 0.41601562 with 2.    Since 0.83203125 is < 1. then add 0 to result
       > Multiply 0.83203125 with 2.    Since 1.66406250 is >= 1. then add 1 to result
       > Multiply 0.66406250 with 2.    Since 1.32812500 is >= 1. then add 1 to result
       > Multiply 0.32812500 with 2.    Since 0.65625000 is < 1. then add 0 to result
       > Multiply 0.65625000 with 2.    Since 1.31250000 is >= 1. then add 1 to result
       > Multiply 0.31250000 with 2.    Since 0.62500000 is < 1. then add 0 to result
       > Multiply 0.62500000 with 2.    Since 1.25000000 is >= 1. then add 1 to result
       > Multiply 0.25000000 with 2.    Since 0.50000000 is < 1. then add 0 to result
       > Multiply 0.50000000 with 2.    Since 1.00000000 is >= 1. then add 1 to result
       > This is equal to 1, so, stop calculating
   0.7560000000000002 of decimal is .110000011000100100110111010010111100011010101 in binary
   so, 100.756 in binary is 1100100.110000011000100100110111010010111100011010101
-100.756 in simple binary => 1100100.110000011000100100110111010010111100011010101
so, -100.756 in normal binary is 1100100.110000011000100100110111010010111100011010101 => 1.1001001100000110001001 * 2^6

single precision:
--------------------
sign bit is 1(-ve)
exponent bits are (127+6=133) => 10000101
   Divide 133 successively by 2 until the quotient is 0
       > 133/2 = 66, remainder is 1
       > 66/2 = 33, remainder is 0
       > 33/2 = 16, remainder is 1
       > 16/2 = 8, remainder is 0
       > 8/2 = 4, remainder is 0
       > 4/2 = 2, remainder is 0
       > 2/2 = 1, remainder is 0
       > 1/2 = 0, remainder is 1
   Read remainders from the bottom to top as 10000101
   So, 133 of decimal is 10000101 in binary
frac/significant bits are 10010011000001100010010

so, -100.756 in single-precision format is 1 10000101 10010011000001100010010
in hexadecimal it is 0xC2C98312



Add a comment
Know the answer?
Add Answer to:
Convert the decimal real number -100.756 to IEEE 754 single precision (32 bit) floating point in...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT