32bit IEEE 754: Decimal ↗ Single Precision Floating Point Binary: -25 100 000 000 000 000 000 002 121 121 121 233 Convert the Number to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard, From a Base 10 Decimal System Number

Number -25 100 000 000 000 000 000 002 121 121 121 233(10) converted and written in 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:

|-25 100 000 000 000 000 000 002 121 121 121 233| = 25 100 000 000 000 000 000 002 121 121 121 233

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;
  • 25 100 000 000 000 000 000 002 121 121 121 233 ÷ 2 = 12 550 000 000 000 000 000 001 060 560 560 616 + 1;
  • 12 550 000 000 000 000 000 001 060 560 560 616 ÷ 2 = 6 275 000 000 000 000 000 000 530 280 280 308 + 0;
  • 6 275 000 000 000 000 000 000 530 280 280 308 ÷ 2 = 3 137 500 000 000 000 000 000 265 140 140 154 + 0;
  • 3 137 500 000 000 000 000 000 265 140 140 154 ÷ 2 = 1 568 750 000 000 000 000 000 132 570 070 077 + 0;
  • 1 568 750 000 000 000 000 000 132 570 070 077 ÷ 2 = 784 375 000 000 000 000 000 066 285 035 038 + 1;
  • 784 375 000 000 000 000 000 066 285 035 038 ÷ 2 = 392 187 500 000 000 000 000 033 142 517 519 + 0;
  • 392 187 500 000 000 000 000 033 142 517 519 ÷ 2 = 196 093 750 000 000 000 000 016 571 258 759 + 1;
  • 196 093 750 000 000 000 000 016 571 258 759 ÷ 2 = 98 046 875 000 000 000 000 008 285 629 379 + 1;
  • 98 046 875 000 000 000 000 008 285 629 379 ÷ 2 = 49 023 437 500 000 000 000 004 142 814 689 + 1;
  • 49 023 437 500 000 000 000 004 142 814 689 ÷ 2 = 24 511 718 750 000 000 000 002 071 407 344 + 1;
  • 24 511 718 750 000 000 000 002 071 407 344 ÷ 2 = 12 255 859 375 000 000 000 001 035 703 672 + 0;
  • 12 255 859 375 000 000 000 001 035 703 672 ÷ 2 = 6 127 929 687 500 000 000 000 517 851 836 + 0;
  • 6 127 929 687 500 000 000 000 517 851 836 ÷ 2 = 3 063 964 843 750 000 000 000 258 925 918 + 0;
  • 3 063 964 843 750 000 000 000 258 925 918 ÷ 2 = 1 531 982 421 875 000 000 000 129 462 959 + 0;
  • 1 531 982 421 875 000 000 000 129 462 959 ÷ 2 = 765 991 210 937 500 000 000 064 731 479 + 1;
  • 765 991 210 937 500 000 000 064 731 479 ÷ 2 = 382 995 605 468 750 000 000 032 365 739 + 1;
  • 382 995 605 468 750 000 000 032 365 739 ÷ 2 = 191 497 802 734 375 000 000 016 182 869 + 1;
  • 191 497 802 734 375 000 000 016 182 869 ÷ 2 = 95 748 901 367 187 500 000 008 091 434 + 1;
  • 95 748 901 367 187 500 000 008 091 434 ÷ 2 = 47 874 450 683 593 750 000 004 045 717 + 0;
  • 47 874 450 683 593 750 000 004 045 717 ÷ 2 = 23 937 225 341 796 875 000 002 022 858 + 1;
  • 23 937 225 341 796 875 000 002 022 858 ÷ 2 = 11 968 612 670 898 437 500 001 011 429 + 0;
  • 11 968 612 670 898 437 500 001 011 429 ÷ 2 = 5 984 306 335 449 218 750 000 505 714 + 1;
  • 5 984 306 335 449 218 750 000 505 714 ÷ 2 = 2 992 153 167 724 609 375 000 252 857 + 0;
  • 2 992 153 167 724 609 375 000 252 857 ÷ 2 = 1 496 076 583 862 304 687 500 126 428 + 1;
  • 1 496 076 583 862 304 687 500 126 428 ÷ 2 = 748 038 291 931 152 343 750 063 214 + 0;
  • 748 038 291 931 152 343 750 063 214 ÷ 2 = 374 019 145 965 576 171 875 031 607 + 0;
  • 374 019 145 965 576 171 875 031 607 ÷ 2 = 187 009 572 982 788 085 937 515 803 + 1;
  • 187 009 572 982 788 085 937 515 803 ÷ 2 = 93 504 786 491 394 042 968 757 901 + 1;
  • 93 504 786 491 394 042 968 757 901 ÷ 2 = 46 752 393 245 697 021 484 378 950 + 1;
  • 46 752 393 245 697 021 484 378 950 ÷ 2 = 23 376 196 622 848 510 742 189 475 + 0;
  • 23 376 196 622 848 510 742 189 475 ÷ 2 = 11 688 098 311 424 255 371 094 737 + 1;
  • 11 688 098 311 424 255 371 094 737 ÷ 2 = 5 844 049 155 712 127 685 547 368 + 1;
  • 5 844 049 155 712 127 685 547 368 ÷ 2 = 2 922 024 577 856 063 842 773 684 + 0;
  • 2 922 024 577 856 063 842 773 684 ÷ 2 = 1 461 012 288 928 031 921 386 842 + 0;
  • 1 461 012 288 928 031 921 386 842 ÷ 2 = 730 506 144 464 015 960 693 421 + 0;
  • 730 506 144 464 015 960 693 421 ÷ 2 = 365 253 072 232 007 980 346 710 + 1;
  • 365 253 072 232 007 980 346 710 ÷ 2 = 182 626 536 116 003 990 173 355 + 0;
  • 182 626 536 116 003 990 173 355 ÷ 2 = 91 313 268 058 001 995 086 677 + 1;
  • 91 313 268 058 001 995 086 677 ÷ 2 = 45 656 634 029 000 997 543 338 + 1;
  • 45 656 634 029 000 997 543 338 ÷ 2 = 22 828 317 014 500 498 771 669 + 0;
  • 22 828 317 014 500 498 771 669 ÷ 2 = 11 414 158 507 250 249 385 834 + 1;
  • 11 414 158 507 250 249 385 834 ÷ 2 = 5 707 079 253 625 124 692 917 + 0;
  • 5 707 079 253 625 124 692 917 ÷ 2 = 2 853 539 626 812 562 346 458 + 1;
  • 2 853 539 626 812 562 346 458 ÷ 2 = 1 426 769 813 406 281 173 229 + 0;
  • 1 426 769 813 406 281 173 229 ÷ 2 = 713 384 906 703 140 586 614 + 1;
  • 713 384 906 703 140 586 614 ÷ 2 = 356 692 453 351 570 293 307 + 0;
  • 356 692 453 351 570 293 307 ÷ 2 = 178 346 226 675 785 146 653 + 1;
  • 178 346 226 675 785 146 653 ÷ 2 = 89 173 113 337 892 573 326 + 1;
  • 89 173 113 337 892 573 326 ÷ 2 = 44 586 556 668 946 286 663 + 0;
  • 44 586 556 668 946 286 663 ÷ 2 = 22 293 278 334 473 143 331 + 1;
  • 22 293 278 334 473 143 331 ÷ 2 = 11 146 639 167 236 571 665 + 1;
  • 11 146 639 167 236 571 665 ÷ 2 = 5 573 319 583 618 285 832 + 1;
  • 5 573 319 583 618 285 832 ÷ 2 = 2 786 659 791 809 142 916 + 0;
  • 2 786 659 791 809 142 916 ÷ 2 = 1 393 329 895 904 571 458 + 0;
  • 1 393 329 895 904 571 458 ÷ 2 = 696 664 947 952 285 729 + 0;
  • 696 664 947 952 285 729 ÷ 2 = 348 332 473 976 142 864 + 1;
  • 348 332 473 976 142 864 ÷ 2 = 174 166 236 988 071 432 + 0;
  • 174 166 236 988 071 432 ÷ 2 = 87 083 118 494 035 716 + 0;
  • 87 083 118 494 035 716 ÷ 2 = 43 541 559 247 017 858 + 0;
  • 43 541 559 247 017 858 ÷ 2 = 21 770 779 623 508 929 + 0;
  • 21 770 779 623 508 929 ÷ 2 = 10 885 389 811 754 464 + 1;
  • 10 885 389 811 754 464 ÷ 2 = 5 442 694 905 877 232 + 0;
  • 5 442 694 905 877 232 ÷ 2 = 2 721 347 452 938 616 + 0;
  • 2 721 347 452 938 616 ÷ 2 = 1 360 673 726 469 308 + 0;
  • 1 360 673 726 469 308 ÷ 2 = 680 336 863 234 654 + 0;
  • 680 336 863 234 654 ÷ 2 = 340 168 431 617 327 + 0;
  • 340 168 431 617 327 ÷ 2 = 170 084 215 808 663 + 1;
  • 170 084 215 808 663 ÷ 2 = 85 042 107 904 331 + 1;
  • 85 042 107 904 331 ÷ 2 = 42 521 053 952 165 + 1;
  • 42 521 053 952 165 ÷ 2 = 21 260 526 976 082 + 1;
  • 21 260 526 976 082 ÷ 2 = 10 630 263 488 041 + 0;
  • 10 630 263 488 041 ÷ 2 = 5 315 131 744 020 + 1;
  • 5 315 131 744 020 ÷ 2 = 2 657 565 872 010 + 0;
  • 2 657 565 872 010 ÷ 2 = 1 328 782 936 005 + 0;
  • 1 328 782 936 005 ÷ 2 = 664 391 468 002 + 1;
  • 664 391 468 002 ÷ 2 = 332 195 734 001 + 0;
  • 332 195 734 001 ÷ 2 = 166 097 867 000 + 1;
  • 166 097 867 000 ÷ 2 = 83 048 933 500 + 0;
  • 83 048 933 500 ÷ 2 = 41 524 466 750 + 0;
  • 41 524 466 750 ÷ 2 = 20 762 233 375 + 0;
  • 20 762 233 375 ÷ 2 = 10 381 116 687 + 1;
  • 10 381 116 687 ÷ 2 = 5 190 558 343 + 1;
  • 5 190 558 343 ÷ 2 = 2 595 279 171 + 1;
  • 2 595 279 171 ÷ 2 = 1 297 639 585 + 1;
  • 1 297 639 585 ÷ 2 = 648 819 792 + 1;
  • 648 819 792 ÷ 2 = 324 409 896 + 0;
  • 324 409 896 ÷ 2 = 162 204 948 + 0;
  • 162 204 948 ÷ 2 = 81 102 474 + 0;
  • 81 102 474 ÷ 2 = 40 551 237 + 0;
  • 40 551 237 ÷ 2 = 20 275 618 + 1;
  • 20 275 618 ÷ 2 = 10 137 809 + 0;
  • 10 137 809 ÷ 2 = 5 068 904 + 1;
  • 5 068 904 ÷ 2 = 2 534 452 + 0;
  • 2 534 452 ÷ 2 = 1 267 226 + 0;
  • 1 267 226 ÷ 2 = 633 613 + 0;
  • 633 613 ÷ 2 = 316 806 + 1;
  • 316 806 ÷ 2 = 158 403 + 0;
  • 158 403 ÷ 2 = 79 201 + 1;
  • 79 201 ÷ 2 = 39 600 + 1;
  • 39 600 ÷ 2 = 19 800 + 0;
  • 19 800 ÷ 2 = 9 900 + 0;
  • 9 900 ÷ 2 = 4 950 + 0;
  • 4 950 ÷ 2 = 2 475 + 0;
  • 2 475 ÷ 2 = 1 237 + 1;
  • 1 237 ÷ 2 = 618 + 1;
  • 618 ÷ 2 = 309 + 0;
  • 309 ÷ 2 = 154 + 1;
  • 154 ÷ 2 = 77 + 0;
  • 77 ÷ 2 = 38 + 1;
  • 38 ÷ 2 = 19 + 0;
  • 19 ÷ 2 = 9 + 1;
  • 9 ÷ 2 = 4 + 1;
  • 4 ÷ 2 = 2 + 0;
  • 2 ÷ 2 = 1 + 0;
  • 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.


25 100 000 000 000 000 000 002 121 121 121 233(10) =


100 1101 0101 1000 0110 1000 1010 0001 1111 0001 0100 1011 1100 0001 0000 1000 1110 1101 0101 0110 1000 1101 1100 1010 1011 1100 0011 1101 0001(2)


4. Normalize the binary representation of the number.

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


25 100 000 000 000 000 000 002 121 121 121 233(10) =


100 1101 0101 1000 0110 1000 1010 0001 1111 0001 0100 1011 1100 0001 0000 1000 1110 1101 0101 0110 1000 1101 1100 1010 1011 1100 0011 1101 0001(2) =


100 1101 0101 1000 0110 1000 1010 0001 1111 0001 0100 1011 1100 0001 0000 1000 1110 1101 0101 0110 1000 1101 1100 1010 1011 1100 0011 1101 0001(2) × 20 =


1.0011 0101 0110 0001 1010 0010 1000 0111 1100 0101 0010 1111 0000 0100 0010 0011 1011 0101 0101 1010 0011 0111 0010 1010 1111 0000 1111 0100 01(2) × 2114


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): 114


Mantissa (not normalized):
1.0011 0101 0110 0001 1010 0010 1000 0111 1100 0101 0010 1111 0000 0100 0010 0011 1011 0101 0101 1010 0011 0111 0010 1010 1111 0000 1111 0100 01


6. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


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


114 + 2(8-1) - 1 =


(114 + 127)(10) =


241(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;
  • 241 ÷ 2 = 120 + 1;
  • 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;

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) =


241(10) =


1111 0001(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. 001 1010 1011 0000 1101 0001 010 0001 1111 0001 0100 1011 1100 0001 0000 1000 1110 1101 0101 0110 1000 1101 1100 1010 1011 1100 0011 1101 0001 =


001 1010 1011 0000 1101 0001


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 0001


Mantissa (23 bits) =
001 1010 1011 0000 1101 0001


The base ten decimal number -25 100 000 000 000 000 000 002 121 121 121 233 converted and written in 32 bit single precision IEEE 754 binary floating point representation:
1 - 1111 0001 - 001 1010 1011 0000 1101 0001

The latest decimal numbers converted from base ten to 32 bit single precision IEEE 754 floating point binary standard representation

Number 1 243.13 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
Number -283 064 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
Number 1 340 583 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
Number 0.000 000 125 8 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
Number -97 644 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
Number -0.014 459 890 236 287 751 812 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
Number 57 493 398 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
Number -400 062 512 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
Number 6 667 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
Number 3.183 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 17 08:14 UTC (GMT)
All base ten decimal numbers converted to 32 bit single precision IEEE 754 binary floating point

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