-9 999 999 999 999 999 999 999 999 999 999 998 701 Converted to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard

Convert decimal -9 999 999 999 999 999 999 999 999 999 999 998 701(10) to 32 bit single precision IEEE 754 binary floating point representation standard (1 bit for sign, 8 bits for exponent, 23 bits for mantissa)

What are the steps to convert decimal number
-9 999 999 999 999 999 999 999 999 999 999 998 701(10) to 32 bit single precision IEEE 754 binary floating point representation (1 bit for sign, 8 bits for exponent, 23 bits for mantissa)

1. Start with the positive version of the number:

|-9 999 999 999 999 999 999 999 999 999 999 998 701| = 9 999 999 999 999 999 999 999 999 999 999 998 701


2. Divide the number repeatedly by 2.

Keep track of each remainder.

We stop when we get a quotient that is equal to zero.


  • division = quotient + remainder;
  • 9 999 999 999 999 999 999 999 999 999 999 998 701 ÷ 2 = 4 999 999 999 999 999 999 999 999 999 999 999 350 + 1;
  • 4 999 999 999 999 999 999 999 999 999 999 999 350 ÷ 2 = 2 499 999 999 999 999 999 999 999 999 999 999 675 + 0;
  • 2 499 999 999 999 999 999 999 999 999 999 999 675 ÷ 2 = 1 249 999 999 999 999 999 999 999 999 999 999 837 + 1;
  • 1 249 999 999 999 999 999 999 999 999 999 999 837 ÷ 2 = 624 999 999 999 999 999 999 999 999 999 999 918 + 1;
  • 624 999 999 999 999 999 999 999 999 999 999 918 ÷ 2 = 312 499 999 999 999 999 999 999 999 999 999 959 + 0;
  • 312 499 999 999 999 999 999 999 999 999 999 959 ÷ 2 = 156 249 999 999 999 999 999 999 999 999 999 979 + 1;
  • 156 249 999 999 999 999 999 999 999 999 999 979 ÷ 2 = 78 124 999 999 999 999 999 999 999 999 999 989 + 1;
  • 78 124 999 999 999 999 999 999 999 999 999 989 ÷ 2 = 39 062 499 999 999 999 999 999 999 999 999 994 + 1;
  • 39 062 499 999 999 999 999 999 999 999 999 994 ÷ 2 = 19 531 249 999 999 999 999 999 999 999 999 997 + 0;
  • 19 531 249 999 999 999 999 999 999 999 999 997 ÷ 2 = 9 765 624 999 999 999 999 999 999 999 999 998 + 1;
  • 9 765 624 999 999 999 999 999 999 999 999 998 ÷ 2 = 4 882 812 499 999 999 999 999 999 999 999 999 + 0;
  • 4 882 812 499 999 999 999 999 999 999 999 999 ÷ 2 = 2 441 406 249 999 999 999 999 999 999 999 999 + 1;
  • 2 441 406 249 999 999 999 999 999 999 999 999 ÷ 2 = 1 220 703 124 999 999 999 999 999 999 999 999 + 1;
  • 1 220 703 124 999 999 999 999 999 999 999 999 ÷ 2 = 610 351 562 499 999 999 999 999 999 999 999 + 1;
  • 610 351 562 499 999 999 999 999 999 999 999 ÷ 2 = 305 175 781 249 999 999 999 999 999 999 999 + 1;
  • 305 175 781 249 999 999 999 999 999 999 999 ÷ 2 = 152 587 890 624 999 999 999 999 999 999 999 + 1;
  • 152 587 890 624 999 999 999 999 999 999 999 ÷ 2 = 76 293 945 312 499 999 999 999 999 999 999 + 1;
  • 76 293 945 312 499 999 999 999 999 999 999 ÷ 2 = 38 146 972 656 249 999 999 999 999 999 999 + 1;
  • 38 146 972 656 249 999 999 999 999 999 999 ÷ 2 = 19 073 486 328 124 999 999 999 999 999 999 + 1;
  • 19 073 486 328 124 999 999 999 999 999 999 ÷ 2 = 9 536 743 164 062 499 999 999 999 999 999 + 1;
  • 9 536 743 164 062 499 999 999 999 999 999 ÷ 2 = 4 768 371 582 031 249 999 999 999 999 999 + 1;
  • 4 768 371 582 031 249 999 999 999 999 999 ÷ 2 = 2 384 185 791 015 624 999 999 999 999 999 + 1;
  • 2 384 185 791 015 624 999 999 999 999 999 ÷ 2 = 1 192 092 895 507 812 499 999 999 999 999 + 1;
  • 1 192 092 895 507 812 499 999 999 999 999 ÷ 2 = 596 046 447 753 906 249 999 999 999 999 + 1;
  • 596 046 447 753 906 249 999 999 999 999 ÷ 2 = 298 023 223 876 953 124 999 999 999 999 + 1;
  • 298 023 223 876 953 124 999 999 999 999 ÷ 2 = 149 011 611 938 476 562 499 999 999 999 + 1;
  • 149 011 611 938 476 562 499 999 999 999 ÷ 2 = 74 505 805 969 238 281 249 999 999 999 + 1;
  • 74 505 805 969 238 281 249 999 999 999 ÷ 2 = 37 252 902 984 619 140 624 999 999 999 + 1;
  • 37 252 902 984 619 140 624 999 999 999 ÷ 2 = 18 626 451 492 309 570 312 499 999 999 + 1;
  • 18 626 451 492 309 570 312 499 999 999 ÷ 2 = 9 313 225 746 154 785 156 249 999 999 + 1;
  • 9 313 225 746 154 785 156 249 999 999 ÷ 2 = 4 656 612 873 077 392 578 124 999 999 + 1;
  • 4 656 612 873 077 392 578 124 999 999 ÷ 2 = 2 328 306 436 538 696 289 062 499 999 + 1;
  • 2 328 306 436 538 696 289 062 499 999 ÷ 2 = 1 164 153 218 269 348 144 531 249 999 + 1;
  • 1 164 153 218 269 348 144 531 249 999 ÷ 2 = 582 076 609 134 674 072 265 624 999 + 1;
  • 582 076 609 134 674 072 265 624 999 ÷ 2 = 291 038 304 567 337 036 132 812 499 + 1;
  • 291 038 304 567 337 036 132 812 499 ÷ 2 = 145 519 152 283 668 518 066 406 249 + 1;
  • 145 519 152 283 668 518 066 406 249 ÷ 2 = 72 759 576 141 834 259 033 203 124 + 1;
  • 72 759 576 141 834 259 033 203 124 ÷ 2 = 36 379 788 070 917 129 516 601 562 + 0;
  • 36 379 788 070 917 129 516 601 562 ÷ 2 = 18 189 894 035 458 564 758 300 781 + 0;
  • 18 189 894 035 458 564 758 300 781 ÷ 2 = 9 094 947 017 729 282 379 150 390 + 1;
  • 9 094 947 017 729 282 379 150 390 ÷ 2 = 4 547 473 508 864 641 189 575 195 + 0;
  • 4 547 473 508 864 641 189 575 195 ÷ 2 = 2 273 736 754 432 320 594 787 597 + 1;
  • 2 273 736 754 432 320 594 787 597 ÷ 2 = 1 136 868 377 216 160 297 393 798 + 1;
  • 1 136 868 377 216 160 297 393 798 ÷ 2 = 568 434 188 608 080 148 696 899 + 0;
  • 568 434 188 608 080 148 696 899 ÷ 2 = 284 217 094 304 040 074 348 449 + 1;
  • 284 217 094 304 040 074 348 449 ÷ 2 = 142 108 547 152 020 037 174 224 + 1;
  • 142 108 547 152 020 037 174 224 ÷ 2 = 71 054 273 576 010 018 587 112 + 0;
  • 71 054 273 576 010 018 587 112 ÷ 2 = 35 527 136 788 005 009 293 556 + 0;
  • 35 527 136 788 005 009 293 556 ÷ 2 = 17 763 568 394 002 504 646 778 + 0;
  • 17 763 568 394 002 504 646 778 ÷ 2 = 8 881 784 197 001 252 323 389 + 0;
  • 8 881 784 197 001 252 323 389 ÷ 2 = 4 440 892 098 500 626 161 694 + 1;
  • 4 440 892 098 500 626 161 694 ÷ 2 = 2 220 446 049 250 313 080 847 + 0;
  • 2 220 446 049 250 313 080 847 ÷ 2 = 1 110 223 024 625 156 540 423 + 1;
  • 1 110 223 024 625 156 540 423 ÷ 2 = 555 111 512 312 578 270 211 + 1;
  • 555 111 512 312 578 270 211 ÷ 2 = 277 555 756 156 289 135 105 + 1;
  • 277 555 756 156 289 135 105 ÷ 2 = 138 777 878 078 144 567 552 + 1;
  • 138 777 878 078 144 567 552 ÷ 2 = 69 388 939 039 072 283 776 + 0;
  • 69 388 939 039 072 283 776 ÷ 2 = 34 694 469 519 536 141 888 + 0;
  • 34 694 469 519 536 141 888 ÷ 2 = 17 347 234 759 768 070 944 + 0;
  • 17 347 234 759 768 070 944 ÷ 2 = 8 673 617 379 884 035 472 + 0;
  • 8 673 617 379 884 035 472 ÷ 2 = 4 336 808 689 942 017 736 + 0;
  • 4 336 808 689 942 017 736 ÷ 2 = 2 168 404 344 971 008 868 + 0;
  • 2 168 404 344 971 008 868 ÷ 2 = 1 084 202 172 485 504 434 + 0;
  • 1 084 202 172 485 504 434 ÷ 2 = 542 101 086 242 752 217 + 0;
  • 542 101 086 242 752 217 ÷ 2 = 271 050 543 121 376 108 + 1;
  • 271 050 543 121 376 108 ÷ 2 = 135 525 271 560 688 054 + 0;
  • 135 525 271 560 688 054 ÷ 2 = 67 762 635 780 344 027 + 0;
  • 67 762 635 780 344 027 ÷ 2 = 33 881 317 890 172 013 + 1;
  • 33 881 317 890 172 013 ÷ 2 = 16 940 658 945 086 006 + 1;
  • 16 940 658 945 086 006 ÷ 2 = 8 470 329 472 543 003 + 0;
  • 8 470 329 472 543 003 ÷ 2 = 4 235 164 736 271 501 + 1;
  • 4 235 164 736 271 501 ÷ 2 = 2 117 582 368 135 750 + 1;
  • 2 117 582 368 135 750 ÷ 2 = 1 058 791 184 067 875 + 0;
  • 1 058 791 184 067 875 ÷ 2 = 529 395 592 033 937 + 1;
  • 529 395 592 033 937 ÷ 2 = 264 697 796 016 968 + 1;
  • 264 697 796 016 968 ÷ 2 = 132 348 898 008 484 + 0;
  • 132 348 898 008 484 ÷ 2 = 66 174 449 004 242 + 0;
  • 66 174 449 004 242 ÷ 2 = 33 087 224 502 121 + 0;
  • 33 087 224 502 121 ÷ 2 = 16 543 612 251 060 + 1;
  • 16 543 612 251 060 ÷ 2 = 8 271 806 125 530 + 0;
  • 8 271 806 125 530 ÷ 2 = 4 135 903 062 765 + 0;
  • 4 135 903 062 765 ÷ 2 = 2 067 951 531 382 + 1;
  • 2 067 951 531 382 ÷ 2 = 1 033 975 765 691 + 0;
  • 1 033 975 765 691 ÷ 2 = 516 987 882 845 + 1;
  • 516 987 882 845 ÷ 2 = 258 493 941 422 + 1;
  • 258 493 941 422 ÷ 2 = 129 246 970 711 + 0;
  • 129 246 970 711 ÷ 2 = 64 623 485 355 + 1;
  • 64 623 485 355 ÷ 2 = 32 311 742 677 + 1;
  • 32 311 742 677 ÷ 2 = 16 155 871 338 + 1;
  • 16 155 871 338 ÷ 2 = 8 077 935 669 + 0;
  • 8 077 935 669 ÷ 2 = 4 038 967 834 + 1;
  • 4 038 967 834 ÷ 2 = 2 019 483 917 + 0;
  • 2 019 483 917 ÷ 2 = 1 009 741 958 + 1;
  • 1 009 741 958 ÷ 2 = 504 870 979 + 0;
  • 504 870 979 ÷ 2 = 252 435 489 + 1;
  • 252 435 489 ÷ 2 = 126 217 744 + 1;
  • 126 217 744 ÷ 2 = 63 108 872 + 0;
  • 63 108 872 ÷ 2 = 31 554 436 + 0;
  • 31 554 436 ÷ 2 = 15 777 218 + 0;
  • 15 777 218 ÷ 2 = 7 888 609 + 0;
  • 7 888 609 ÷ 2 = 3 944 304 + 1;
  • 3 944 304 ÷ 2 = 1 972 152 + 0;
  • 1 972 152 ÷ 2 = 986 076 + 0;
  • 986 076 ÷ 2 = 493 038 + 0;
  • 493 038 ÷ 2 = 246 519 + 0;
  • 246 519 ÷ 2 = 123 259 + 1;
  • 123 259 ÷ 2 = 61 629 + 1;
  • 61 629 ÷ 2 = 30 814 + 1;
  • 30 814 ÷ 2 = 15 407 + 0;
  • 15 407 ÷ 2 = 7 703 + 1;
  • 7 703 ÷ 2 = 3 851 + 1;
  • 3 851 ÷ 2 = 1 925 + 1;
  • 1 925 ÷ 2 = 962 + 1;
  • 962 ÷ 2 = 481 + 0;
  • 481 ÷ 2 = 240 + 1;
  • 240 ÷ 2 = 120 + 0;
  • 120 ÷ 2 = 60 + 0;
  • 60 ÷ 2 = 30 + 0;
  • 30 ÷ 2 = 15 + 0;
  • 15 ÷ 2 = 7 + 1;
  • 7 ÷ 2 = 3 + 1;
  • 3 ÷ 2 = 1 + 1;
  • 1 ÷ 2 = 0 + 1;

3. Construct the base 2 representation of the positive number.

Take all the remainders starting from the bottom of the list constructed above.

9 999 999 999 999 999 999 999 999 999 999 998 701(10) =


111 1000 0101 1110 1110 0001 0000 1101 0101 1101 1010 0100 0110 1101 1001 0000 0000 1111 0100 0011 0110 1001 1111 1111 1111 1111 1111 1111 1010 1110 1101(2)


4. Normalize the binary representation of the number.

Shift the decimal mark 122 positions to the left, so that only one non zero digit remains to the left of it:


9 999 999 999 999 999 999 999 999 999 999 998 701(10) =


111 1000 0101 1110 1110 0001 0000 1101 0101 1101 1010 0100 0110 1101 1001 0000 0000 1111 0100 0011 0110 1001 1111 1111 1111 1111 1111 1111 1010 1110 1101(2) =


111 1000 0101 1110 1110 0001 0000 1101 0101 1101 1010 0100 0110 1101 1001 0000 0000 1111 0100 0011 0110 1001 1111 1111 1111 1111 1111 1111 1010 1110 1101(2) × 20 =


1.1110 0001 0111 1011 1000 0100 0011 0101 0111 0110 1001 0001 1011 0110 0100 0000 0011 1101 0000 1101 1010 0111 1111 1111 1111 1111 1111 1110 1011 1011 01(2) × 2122


5. Up to this moment, there are the following elements that would feed into the 32 bit single precision IEEE 754 binary floating point representation:

Sign 1 (a negative number)


Exponent (unadjusted): 122


Mantissa (not normalized):
1.1110 0001 0111 1011 1000 0100 0011 0101 0111 0110 1001 0001 1011 0110 0100 0000 0011 1101 0000 1101 1010 0111 1111 1111 1111 1111 1111 1110 1011 1011 01


6. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


Exponent (unadjusted) + 2(8-1) - 1 =


122 + 2(8-1) - 1 =


(122 + 127)(10) =


249(10)


7. Convert the adjusted exponent from the decimal (base 10) to 8 bit binary.

Use the same technique of repeatedly dividing by 2:


  • division = quotient + remainder;
  • 249 ÷ 2 = 124 + 1;
  • 124 ÷ 2 = 62 + 0;
  • 62 ÷ 2 = 31 + 0;
  • 31 ÷ 2 = 15 + 1;
  • 15 ÷ 2 = 7 + 1;
  • 7 ÷ 2 = 3 + 1;
  • 3 ÷ 2 = 1 + 1;
  • 1 ÷ 2 = 0 + 1;

8. Construct the base 2 representation of the adjusted exponent.

Take all the remainders starting from the bottom of the list constructed above.


Exponent (adjusted) =


249(10) =


1111 1001(2)


9. Normalize the mantissa.

a) Remove the leading (the leftmost) bit, since it's allways 1, and the decimal point, if the case.


b) Adjust its length to 23 bits, by removing the excess bits, from the right (if any of the excess bits is set on 1, we are losing precision...).


Mantissa (normalized) =


1. 111 0000 1011 1101 1100 0010 000 1101 0101 1101 1010 0100 0110 1101 1001 0000 0000 1111 0100 0011 0110 1001 1111 1111 1111 1111 1111 1111 1010 1110 1101 =


111 0000 1011 1101 1100 0010


10. The three elements that make up the number's 32 bit single precision IEEE 754 binary floating point representation:

Sign (1 bit) =
1 (a negative number)


Exponent (8 bits) =
1111 1001


Mantissa (23 bits) =
111 0000 1011 1101 1100 0010


Decimal number -9 999 999 999 999 999 999 999 999 999 999 998 701 converted to 32 bit single precision IEEE 754 binary floating point representation:

1 - 1111 1001 - 111 0000 1011 1101 1100 0010

How to convert decimal numbers from base ten to 32 bit single precision IEEE 754 binary floating point standard

Follow the steps below to convert a base 10 decimal number to 32 bit single precision IEEE 754 binary floating point:

  • 1. If the number to be converted is negative, start with its the positive version.
  • 2. First convert the integer part. Divide repeatedly by 2 the base ten positive representation of the integer number that is to be converted to binary, until we get a quotient that is equal to zero, keeping track of each remainder.
  • 3. Construct the base 2 representation of the positive integer part of the number, by taking all the remainders of the previous dividing operations, starting from the bottom of the list constructed above. Thus, the last remainder of the divisions becomes the first symbol (the leftmost) of the base two number, while the first remainder becomes the last symbol (the rightmost).
  • 4. Then convert the fractional part. Multiply the number repeatedly by 2, until we get a fractional part that is equal to zero, keeping track of each integer part of the results.
  • 5. Construct the base 2 representation of the fractional part of the number by taking all the integer parts of the previous multiplying operations, starting from the top of the constructed list above (they should appear in the binary representation, from left to right, in the order they have been calculated).
  • 6. Normalize the binary representation of the number, by shifting the decimal point (or if you prefer, the decimal mark) "n" positions either to the left or to the right, so that only one non zero digit remains to the left of the decimal point.
  • 7. Adjust the exponent in 8 bit excess/bias notation and then convert it from decimal (base 10) to 8 bit binary, by using the same technique of repeatedly dividing by 2, as shown above:
    Exponent (adjusted) = Exponent (unadjusted) + 2(8-1) - 1
  • 8. Normalize mantissa, remove the leading (leftmost) bit, since it's allways '1' (and the decimal sign if the case) and adjust its length to 23 bits, either by removing the excess bits from the right (losing precision...) or by adding extra '0' bits to the right.
  • 9. Sign (it takes 1 bit) is either 1 for a negative or 0 for a positive number.

Example: convert the negative number -25.347 from decimal system (base ten) to 32 bit single precision IEEE 754 binary floating point:

  • 1. Start with the positive version of the number:

    |-25.347| = 25.347

  • 2. First convert the integer part, 25. Divide it repeatedly by 2, keeping track of each remainder, until we get a quotient that is equal to zero:
    • division = quotient + remainder;
    • 25 ÷ 2 = 12 + 1;
    • 12 ÷ 2 = 6 + 0;
    • 6 ÷ 2 = 3 + 0;
    • 3 ÷ 2 = 1 + 1;
    • 1 ÷ 2 = 0 + 1;
    • We have encountered a quotient that is ZERO => FULL STOP
  • 3. Construct the base 2 representation of the integer part of the number by taking all the remainders of the previous dividing operations, starting from the bottom of the list constructed above:

    25(10) = 1 1001(2)

  • 4. Then convert the fractional part, 0.347. Multiply repeatedly by 2, keeping track of each integer part of the results, until we get a fractional part that is equal to zero:
    • #) multiplying = integer + fractional part;
    • 1) 0.347 × 2 = 0 + 0.694;
    • 2) 0.694 × 2 = 1 + 0.388;
    • 3) 0.388 × 2 = 0 + 0.776;
    • 4) 0.776 × 2 = 1 + 0.552;
    • 5) 0.552 × 2 = 1 + 0.104;
    • 6) 0.104 × 2 = 0 + 0.208;
    • 7) 0.208 × 2 = 0 + 0.416;
    • 8) 0.416 × 2 = 0 + 0.832;
    • 9) 0.832 × 2 = 1 + 0.664;
    • 10) 0.664 × 2 = 1 + 0.328;
    • 11) 0.328 × 2 = 0 + 0.656;
    • 12) 0.656 × 2 = 1 + 0.312;
    • 13) 0.312 × 2 = 0 + 0.624;
    • 14) 0.624 × 2 = 1 + 0.248;
    • 15) 0.248 × 2 = 0 + 0.496;
    • 16) 0.496 × 2 = 0 + 0.992;
    • 17) 0.992 × 2 = 1 + 0.984;
    • 18) 0.984 × 2 = 1 + 0.968;
    • 19) 0.968 × 2 = 1 + 0.936;
    • 20) 0.936 × 2 = 1 + 0.872;
    • 21) 0.872 × 2 = 1 + 0.744;
    • 22) 0.744 × 2 = 1 + 0.488;
    • 23) 0.488 × 2 = 0 + 0.976;
    • 24) 0.976 × 2 = 1 + 0.952;
    • We didn't get any fractional part that was equal to zero. But we had enough iterations (over Mantissa limit = 23) and at least one integer part that was different from zero => FULL STOP (losing precision...).
  • 5. Construct the base 2 representation of the fractional part of the number, by taking all the integer parts of the previous multiplying operations, starting from the top of the constructed list above:

    0.347(10) = 0.0101 1000 1101 0100 1111 1101(2)

  • 6. Summarizing - the positive number before normalization:

    25.347(10) = 1 1001.0101 1000 1101 0100 1111 1101(2)

  • 7. Normalize the binary representation of the number, shifting the decimal point 4 positions to the left so that only one non-zero digit stays to the left of the decimal point:

    25.347(10) =
    1 1001.0101 1000 1101 0100 1111 1101(2) =
    1 1001.0101 1000 1101 0100 1111 1101(2) × 20 =
    1.1001 0101 1000 1101 0100 1111 1101(2) × 24

  • 8. Up to this moment, there are the following elements that would feed into the 32 bit single precision IEEE 754 binary floating point:

    Sign: 1 (a negative number)

    Exponent (unadjusted): 4

    Mantissa (not-normalized): 1.1001 0101 1000 1101 0100 1111 1101

  • 9. Adjust the exponent in 8 bit excess/bias notation and then convert it from decimal (base 10) to 8 bit binary (base 2), by using the same technique of repeatedly dividing it by 2, as already demonstrated above:

    Exponent (adjusted) = Exponent (unadjusted) + 2(8-1) - 1 = (4 + 127)(10) = 131(10) =
    1000 0011(2)

  • 10. Normalize the mantissa, remove the leading (leftmost) bit, since it's allways '1' (and the decimal point) and adjust its length to 23 bits, by removing the excess bits from the right (losing precision...):

    Mantissa (not-normalized): 1.1001 0101 1000 1101 0100 1111 1101

    Mantissa (normalized): 100 1010 1100 0110 1010 0111

  • Conclusion:

    Sign (1 bit) = 1 (a negative number)

    Exponent (8 bits) = 1000 0011

    Mantissa (23 bits) = 100 1010 1100 0110 1010 0111

  • Number -25.347, converted from the decimal system (base 10) to 32 bit single precision IEEE 754 binary floating point =
    1 - 1000 0011 - 100 1010 1100 0110 1010 0111