32bit IEEE 754: Decimal ↗ Single Precision Floating Point Binary: 10 001 011 010 110 010 010 109 999 999 910 Convert the Number to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard, From a Base 10 Decimal System Number

Number 10 001 011 010 110 010 010 109 999 999 910(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. 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;
  • 10 001 011 010 110 010 010 109 999 999 910 ÷ 2 = 5 000 505 505 055 005 005 054 999 999 955 + 0;
  • 5 000 505 505 055 005 005 054 999 999 955 ÷ 2 = 2 500 252 752 527 502 502 527 499 999 977 + 1;
  • 2 500 252 752 527 502 502 527 499 999 977 ÷ 2 = 1 250 126 376 263 751 251 263 749 999 988 + 1;
  • 1 250 126 376 263 751 251 263 749 999 988 ÷ 2 = 625 063 188 131 875 625 631 874 999 994 + 0;
  • 625 063 188 131 875 625 631 874 999 994 ÷ 2 = 312 531 594 065 937 812 815 937 499 997 + 0;
  • 312 531 594 065 937 812 815 937 499 997 ÷ 2 = 156 265 797 032 968 906 407 968 749 998 + 1;
  • 156 265 797 032 968 906 407 968 749 998 ÷ 2 = 78 132 898 516 484 453 203 984 374 999 + 0;
  • 78 132 898 516 484 453 203 984 374 999 ÷ 2 = 39 066 449 258 242 226 601 992 187 499 + 1;
  • 39 066 449 258 242 226 601 992 187 499 ÷ 2 = 19 533 224 629 121 113 300 996 093 749 + 1;
  • 19 533 224 629 121 113 300 996 093 749 ÷ 2 = 9 766 612 314 560 556 650 498 046 874 + 1;
  • 9 766 612 314 560 556 650 498 046 874 ÷ 2 = 4 883 306 157 280 278 325 249 023 437 + 0;
  • 4 883 306 157 280 278 325 249 023 437 ÷ 2 = 2 441 653 078 640 139 162 624 511 718 + 1;
  • 2 441 653 078 640 139 162 624 511 718 ÷ 2 = 1 220 826 539 320 069 581 312 255 859 + 0;
  • 1 220 826 539 320 069 581 312 255 859 ÷ 2 = 610 413 269 660 034 790 656 127 929 + 1;
  • 610 413 269 660 034 790 656 127 929 ÷ 2 = 305 206 634 830 017 395 328 063 964 + 1;
  • 305 206 634 830 017 395 328 063 964 ÷ 2 = 152 603 317 415 008 697 664 031 982 + 0;
  • 152 603 317 415 008 697 664 031 982 ÷ 2 = 76 301 658 707 504 348 832 015 991 + 0;
  • 76 301 658 707 504 348 832 015 991 ÷ 2 = 38 150 829 353 752 174 416 007 995 + 1;
  • 38 150 829 353 752 174 416 007 995 ÷ 2 = 19 075 414 676 876 087 208 003 997 + 1;
  • 19 075 414 676 876 087 208 003 997 ÷ 2 = 9 537 707 338 438 043 604 001 998 + 1;
  • 9 537 707 338 438 043 604 001 998 ÷ 2 = 4 768 853 669 219 021 802 000 999 + 0;
  • 4 768 853 669 219 021 802 000 999 ÷ 2 = 2 384 426 834 609 510 901 000 499 + 1;
  • 2 384 426 834 609 510 901 000 499 ÷ 2 = 1 192 213 417 304 755 450 500 249 + 1;
  • 1 192 213 417 304 755 450 500 249 ÷ 2 = 596 106 708 652 377 725 250 124 + 1;
  • 596 106 708 652 377 725 250 124 ÷ 2 = 298 053 354 326 188 862 625 062 + 0;
  • 298 053 354 326 188 862 625 062 ÷ 2 = 149 026 677 163 094 431 312 531 + 0;
  • 149 026 677 163 094 431 312 531 ÷ 2 = 74 513 338 581 547 215 656 265 + 1;
  • 74 513 338 581 547 215 656 265 ÷ 2 = 37 256 669 290 773 607 828 132 + 1;
  • 37 256 669 290 773 607 828 132 ÷ 2 = 18 628 334 645 386 803 914 066 + 0;
  • 18 628 334 645 386 803 914 066 ÷ 2 = 9 314 167 322 693 401 957 033 + 0;
  • 9 314 167 322 693 401 957 033 ÷ 2 = 4 657 083 661 346 700 978 516 + 1;
  • 4 657 083 661 346 700 978 516 ÷ 2 = 2 328 541 830 673 350 489 258 + 0;
  • 2 328 541 830 673 350 489 258 ÷ 2 = 1 164 270 915 336 675 244 629 + 0;
  • 1 164 270 915 336 675 244 629 ÷ 2 = 582 135 457 668 337 622 314 + 1;
  • 582 135 457 668 337 622 314 ÷ 2 = 291 067 728 834 168 811 157 + 0;
  • 291 067 728 834 168 811 157 ÷ 2 = 145 533 864 417 084 405 578 + 1;
  • 145 533 864 417 084 405 578 ÷ 2 = 72 766 932 208 542 202 789 + 0;
  • 72 766 932 208 542 202 789 ÷ 2 = 36 383 466 104 271 101 394 + 1;
  • 36 383 466 104 271 101 394 ÷ 2 = 18 191 733 052 135 550 697 + 0;
  • 18 191 733 052 135 550 697 ÷ 2 = 9 095 866 526 067 775 348 + 1;
  • 9 095 866 526 067 775 348 ÷ 2 = 4 547 933 263 033 887 674 + 0;
  • 4 547 933 263 033 887 674 ÷ 2 = 2 273 966 631 516 943 837 + 0;
  • 2 273 966 631 516 943 837 ÷ 2 = 1 136 983 315 758 471 918 + 1;
  • 1 136 983 315 758 471 918 ÷ 2 = 568 491 657 879 235 959 + 0;
  • 568 491 657 879 235 959 ÷ 2 = 284 245 828 939 617 979 + 1;
  • 284 245 828 939 617 979 ÷ 2 = 142 122 914 469 808 989 + 1;
  • 142 122 914 469 808 989 ÷ 2 = 71 061 457 234 904 494 + 1;
  • 71 061 457 234 904 494 ÷ 2 = 35 530 728 617 452 247 + 0;
  • 35 530 728 617 452 247 ÷ 2 = 17 765 364 308 726 123 + 1;
  • 17 765 364 308 726 123 ÷ 2 = 8 882 682 154 363 061 + 1;
  • 8 882 682 154 363 061 ÷ 2 = 4 441 341 077 181 530 + 1;
  • 4 441 341 077 181 530 ÷ 2 = 2 220 670 538 590 765 + 0;
  • 2 220 670 538 590 765 ÷ 2 = 1 110 335 269 295 382 + 1;
  • 1 110 335 269 295 382 ÷ 2 = 555 167 634 647 691 + 0;
  • 555 167 634 647 691 ÷ 2 = 277 583 817 323 845 + 1;
  • 277 583 817 323 845 ÷ 2 = 138 791 908 661 922 + 1;
  • 138 791 908 661 922 ÷ 2 = 69 395 954 330 961 + 0;
  • 69 395 954 330 961 ÷ 2 = 34 697 977 165 480 + 1;
  • 34 697 977 165 480 ÷ 2 = 17 348 988 582 740 + 0;
  • 17 348 988 582 740 ÷ 2 = 8 674 494 291 370 + 0;
  • 8 674 494 291 370 ÷ 2 = 4 337 247 145 685 + 0;
  • 4 337 247 145 685 ÷ 2 = 2 168 623 572 842 + 1;
  • 2 168 623 572 842 ÷ 2 = 1 084 311 786 421 + 0;
  • 1 084 311 786 421 ÷ 2 = 542 155 893 210 + 1;
  • 542 155 893 210 ÷ 2 = 271 077 946 605 + 0;
  • 271 077 946 605 ÷ 2 = 135 538 973 302 + 1;
  • 135 538 973 302 ÷ 2 = 67 769 486 651 + 0;
  • 67 769 486 651 ÷ 2 = 33 884 743 325 + 1;
  • 33 884 743 325 ÷ 2 = 16 942 371 662 + 1;
  • 16 942 371 662 ÷ 2 = 8 471 185 831 + 0;
  • 8 471 185 831 ÷ 2 = 4 235 592 915 + 1;
  • 4 235 592 915 ÷ 2 = 2 117 796 457 + 1;
  • 2 117 796 457 ÷ 2 = 1 058 898 228 + 1;
  • 1 058 898 228 ÷ 2 = 529 449 114 + 0;
  • 529 449 114 ÷ 2 = 264 724 557 + 0;
  • 264 724 557 ÷ 2 = 132 362 278 + 1;
  • 132 362 278 ÷ 2 = 66 181 139 + 0;
  • 66 181 139 ÷ 2 = 33 090 569 + 1;
  • 33 090 569 ÷ 2 = 16 545 284 + 1;
  • 16 545 284 ÷ 2 = 8 272 642 + 0;
  • 8 272 642 ÷ 2 = 4 136 321 + 0;
  • 4 136 321 ÷ 2 = 2 068 160 + 1;
  • 2 068 160 ÷ 2 = 1 034 080 + 0;
  • 1 034 080 ÷ 2 = 517 040 + 0;
  • 517 040 ÷ 2 = 258 520 + 0;
  • 258 520 ÷ 2 = 129 260 + 0;
  • 129 260 ÷ 2 = 64 630 + 0;
  • 64 630 ÷ 2 = 32 315 + 0;
  • 32 315 ÷ 2 = 16 157 + 1;
  • 16 157 ÷ 2 = 8 078 + 1;
  • 8 078 ÷ 2 = 4 039 + 0;
  • 4 039 ÷ 2 = 2 019 + 1;
  • 2 019 ÷ 2 = 1 009 + 1;
  • 1 009 ÷ 2 = 504 + 1;
  • 504 ÷ 2 = 252 + 0;
  • 252 ÷ 2 = 126 + 0;
  • 126 ÷ 2 = 63 + 0;
  • 63 ÷ 2 = 31 + 1;
  • 31 ÷ 2 = 15 + 1;
  • 15 ÷ 2 = 7 + 1;
  • 7 ÷ 2 = 3 + 1;
  • 3 ÷ 2 = 1 + 1;
  • 1 ÷ 2 = 0 + 1;

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

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


10 001 011 010 110 010 010 109 999 999 910(10) =


111 1110 0011 1011 0000 0010 0110 1001 1101 1010 1010 0010 1101 0111 0111 0100 1010 1010 0100 1100 1110 1110 0110 1011 1010 0110(2)


3. Normalize the binary representation of the number.

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


10 001 011 010 110 010 010 109 999 999 910(10) =


111 1110 0011 1011 0000 0010 0110 1001 1101 1010 1010 0010 1101 0111 0111 0100 1010 1010 0100 1100 1110 1110 0110 1011 1010 0110(2) =


111 1110 0011 1011 0000 0010 0110 1001 1101 1010 1010 0010 1101 0111 0111 0100 1010 1010 0100 1100 1110 1110 0110 1011 1010 0110(2) × 20 =


1.1111 1000 1110 1100 0000 1001 1010 0111 0110 1010 1000 1011 0101 1101 1101 0010 1010 1001 0011 0011 1011 1001 1010 1110 1001 10(2) × 2102


4. 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 0 (a positive number)


Exponent (unadjusted): 102


Mantissa (not normalized):
1.1111 1000 1110 1100 0000 1001 1010 0111 0110 1010 1000 1011 0101 1101 1101 0010 1010 1001 0011 0011 1011 1001 1010 1110 1001 10


5. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


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


102 + 2(8-1) - 1 =


(102 + 127)(10) =


229(10)


6. 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;
  • 229 ÷ 2 = 114 + 1;
  • 114 ÷ 2 = 57 + 0;
  • 57 ÷ 2 = 28 + 1;
  • 28 ÷ 2 = 14 + 0;
  • 14 ÷ 2 = 7 + 0;
  • 7 ÷ 2 = 3 + 1;
  • 3 ÷ 2 = 1 + 1;
  • 1 ÷ 2 = 0 + 1;

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

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


Exponent (adjusted) =


229(10) =


1110 0101(2)


8. 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 1100 0111 0110 0000 0100 110 1001 1101 1010 1010 0010 1101 0111 0111 0100 1010 1010 0100 1100 1110 1110 0110 1011 1010 0110 =


111 1100 0111 0110 0000 0100


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

Sign (1 bit) =
0 (a positive number)


Exponent (8 bits) =
1110 0101


Mantissa (23 bits) =
111 1100 0111 0110 0000 0100


The base ten decimal number 10 001 011 010 110 010 010 109 999 999 910 converted and written in 32 bit single precision IEEE 754 binary floating point representation:
0 - 1110 0101 - 111 1100 0111 0110 0000 0100

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

Number 27.835 937 5 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 UTC (GMT)
Number 11 000 010 010 101 000 000 000 000 000 000 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 UTC (GMT)
Number 11.01 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 UTC (GMT)
Number 1.85 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 UTC (GMT)
Number -53.75 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 UTC (GMT)
Number -45.812 5 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 UTC (GMT)
Number 699 030 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 UTC (GMT)
Number -32.96 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 UTC (GMT)
Number -0.673 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 UTC (GMT)
Number 138 140 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Apr 28 07:57 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