32bit IEEE 754: Decimal ↗ Single Precision Floating Point Binary: 11 010 111 010 110 100 000 000 000 000 059 Convert the Number to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard, From a Base 10 Decimal System Number

Number 11 010 111 010 110 100 000 000 000 000 059(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;
  • 11 010 111 010 110 100 000 000 000 000 059 ÷ 2 = 5 505 055 505 055 050 000 000 000 000 029 + 1;
  • 5 505 055 505 055 050 000 000 000 000 029 ÷ 2 = 2 752 527 752 527 525 000 000 000 000 014 + 1;
  • 2 752 527 752 527 525 000 000 000 000 014 ÷ 2 = 1 376 263 876 263 762 500 000 000 000 007 + 0;
  • 1 376 263 876 263 762 500 000 000 000 007 ÷ 2 = 688 131 938 131 881 250 000 000 000 003 + 1;
  • 688 131 938 131 881 250 000 000 000 003 ÷ 2 = 344 065 969 065 940 625 000 000 000 001 + 1;
  • 344 065 969 065 940 625 000 000 000 001 ÷ 2 = 172 032 984 532 970 312 500 000 000 000 + 1;
  • 172 032 984 532 970 312 500 000 000 000 ÷ 2 = 86 016 492 266 485 156 250 000 000 000 + 0;
  • 86 016 492 266 485 156 250 000 000 000 ÷ 2 = 43 008 246 133 242 578 125 000 000 000 + 0;
  • 43 008 246 133 242 578 125 000 000 000 ÷ 2 = 21 504 123 066 621 289 062 500 000 000 + 0;
  • 21 504 123 066 621 289 062 500 000 000 ÷ 2 = 10 752 061 533 310 644 531 250 000 000 + 0;
  • 10 752 061 533 310 644 531 250 000 000 ÷ 2 = 5 376 030 766 655 322 265 625 000 000 + 0;
  • 5 376 030 766 655 322 265 625 000 000 ÷ 2 = 2 688 015 383 327 661 132 812 500 000 + 0;
  • 2 688 015 383 327 661 132 812 500 000 ÷ 2 = 1 344 007 691 663 830 566 406 250 000 + 0;
  • 1 344 007 691 663 830 566 406 250 000 ÷ 2 = 672 003 845 831 915 283 203 125 000 + 0;
  • 672 003 845 831 915 283 203 125 000 ÷ 2 = 336 001 922 915 957 641 601 562 500 + 0;
  • 336 001 922 915 957 641 601 562 500 ÷ 2 = 168 000 961 457 978 820 800 781 250 + 0;
  • 168 000 961 457 978 820 800 781 250 ÷ 2 = 84 000 480 728 989 410 400 390 625 + 0;
  • 84 000 480 728 989 410 400 390 625 ÷ 2 = 42 000 240 364 494 705 200 195 312 + 1;
  • 42 000 240 364 494 705 200 195 312 ÷ 2 = 21 000 120 182 247 352 600 097 656 + 0;
  • 21 000 120 182 247 352 600 097 656 ÷ 2 = 10 500 060 091 123 676 300 048 828 + 0;
  • 10 500 060 091 123 676 300 048 828 ÷ 2 = 5 250 030 045 561 838 150 024 414 + 0;
  • 5 250 030 045 561 838 150 024 414 ÷ 2 = 2 625 015 022 780 919 075 012 207 + 0;
  • 2 625 015 022 780 919 075 012 207 ÷ 2 = 1 312 507 511 390 459 537 506 103 + 1;
  • 1 312 507 511 390 459 537 506 103 ÷ 2 = 656 253 755 695 229 768 753 051 + 1;
  • 656 253 755 695 229 768 753 051 ÷ 2 = 328 126 877 847 614 884 376 525 + 1;
  • 328 126 877 847 614 884 376 525 ÷ 2 = 164 063 438 923 807 442 188 262 + 1;
  • 164 063 438 923 807 442 188 262 ÷ 2 = 82 031 719 461 903 721 094 131 + 0;
  • 82 031 719 461 903 721 094 131 ÷ 2 = 41 015 859 730 951 860 547 065 + 1;
  • 41 015 859 730 951 860 547 065 ÷ 2 = 20 507 929 865 475 930 273 532 + 1;
  • 20 507 929 865 475 930 273 532 ÷ 2 = 10 253 964 932 737 965 136 766 + 0;
  • 10 253 964 932 737 965 136 766 ÷ 2 = 5 126 982 466 368 982 568 383 + 0;
  • 5 126 982 466 368 982 568 383 ÷ 2 = 2 563 491 233 184 491 284 191 + 1;
  • 2 563 491 233 184 491 284 191 ÷ 2 = 1 281 745 616 592 245 642 095 + 1;
  • 1 281 745 616 592 245 642 095 ÷ 2 = 640 872 808 296 122 821 047 + 1;
  • 640 872 808 296 122 821 047 ÷ 2 = 320 436 404 148 061 410 523 + 1;
  • 320 436 404 148 061 410 523 ÷ 2 = 160 218 202 074 030 705 261 + 1;
  • 160 218 202 074 030 705 261 ÷ 2 = 80 109 101 037 015 352 630 + 1;
  • 80 109 101 037 015 352 630 ÷ 2 = 40 054 550 518 507 676 315 + 0;
  • 40 054 550 518 507 676 315 ÷ 2 = 20 027 275 259 253 838 157 + 1;
  • 20 027 275 259 253 838 157 ÷ 2 = 10 013 637 629 626 919 078 + 1;
  • 10 013 637 629 626 919 078 ÷ 2 = 5 006 818 814 813 459 539 + 0;
  • 5 006 818 814 813 459 539 ÷ 2 = 2 503 409 407 406 729 769 + 1;
  • 2 503 409 407 406 729 769 ÷ 2 = 1 251 704 703 703 364 884 + 1;
  • 1 251 704 703 703 364 884 ÷ 2 = 625 852 351 851 682 442 + 0;
  • 625 852 351 851 682 442 ÷ 2 = 312 926 175 925 841 221 + 0;
  • 312 926 175 925 841 221 ÷ 2 = 156 463 087 962 920 610 + 1;
  • 156 463 087 962 920 610 ÷ 2 = 78 231 543 981 460 305 + 0;
  • 78 231 543 981 460 305 ÷ 2 = 39 115 771 990 730 152 + 1;
  • 39 115 771 990 730 152 ÷ 2 = 19 557 885 995 365 076 + 0;
  • 19 557 885 995 365 076 ÷ 2 = 9 778 942 997 682 538 + 0;
  • 9 778 942 997 682 538 ÷ 2 = 4 889 471 498 841 269 + 0;
  • 4 889 471 498 841 269 ÷ 2 = 2 444 735 749 420 634 + 1;
  • 2 444 735 749 420 634 ÷ 2 = 1 222 367 874 710 317 + 0;
  • 1 222 367 874 710 317 ÷ 2 = 611 183 937 355 158 + 1;
  • 611 183 937 355 158 ÷ 2 = 305 591 968 677 579 + 0;
  • 305 591 968 677 579 ÷ 2 = 152 795 984 338 789 + 1;
  • 152 795 984 338 789 ÷ 2 = 76 397 992 169 394 + 1;
  • 76 397 992 169 394 ÷ 2 = 38 198 996 084 697 + 0;
  • 38 198 996 084 697 ÷ 2 = 19 099 498 042 348 + 1;
  • 19 099 498 042 348 ÷ 2 = 9 549 749 021 174 + 0;
  • 9 549 749 021 174 ÷ 2 = 4 774 874 510 587 + 0;
  • 4 774 874 510 587 ÷ 2 = 2 387 437 255 293 + 1;
  • 2 387 437 255 293 ÷ 2 = 1 193 718 627 646 + 1;
  • 1 193 718 627 646 ÷ 2 = 596 859 313 823 + 0;
  • 596 859 313 823 ÷ 2 = 298 429 656 911 + 1;
  • 298 429 656 911 ÷ 2 = 149 214 828 455 + 1;
  • 149 214 828 455 ÷ 2 = 74 607 414 227 + 1;
  • 74 607 414 227 ÷ 2 = 37 303 707 113 + 1;
  • 37 303 707 113 ÷ 2 = 18 651 853 556 + 1;
  • 18 651 853 556 ÷ 2 = 9 325 926 778 + 0;
  • 9 325 926 778 ÷ 2 = 4 662 963 389 + 0;
  • 4 662 963 389 ÷ 2 = 2 331 481 694 + 1;
  • 2 331 481 694 ÷ 2 = 1 165 740 847 + 0;
  • 1 165 740 847 ÷ 2 = 582 870 423 + 1;
  • 582 870 423 ÷ 2 = 291 435 211 + 1;
  • 291 435 211 ÷ 2 = 145 717 605 + 1;
  • 145 717 605 ÷ 2 = 72 858 802 + 1;
  • 72 858 802 ÷ 2 = 36 429 401 + 0;
  • 36 429 401 ÷ 2 = 18 214 700 + 1;
  • 18 214 700 ÷ 2 = 9 107 350 + 0;
  • 9 107 350 ÷ 2 = 4 553 675 + 0;
  • 4 553 675 ÷ 2 = 2 276 837 + 1;
  • 2 276 837 ÷ 2 = 1 138 418 + 1;
  • 1 138 418 ÷ 2 = 569 209 + 0;
  • 569 209 ÷ 2 = 284 604 + 1;
  • 284 604 ÷ 2 = 142 302 + 0;
  • 142 302 ÷ 2 = 71 151 + 0;
  • 71 151 ÷ 2 = 35 575 + 1;
  • 35 575 ÷ 2 = 17 787 + 1;
  • 17 787 ÷ 2 = 8 893 + 1;
  • 8 893 ÷ 2 = 4 446 + 1;
  • 4 446 ÷ 2 = 2 223 + 0;
  • 2 223 ÷ 2 = 1 111 + 1;
  • 1 111 ÷ 2 = 555 + 1;
  • 555 ÷ 2 = 277 + 1;
  • 277 ÷ 2 = 138 + 1;
  • 138 ÷ 2 = 69 + 0;
  • 69 ÷ 2 = 34 + 1;
  • 34 ÷ 2 = 17 + 0;
  • 17 ÷ 2 = 8 + 1;
  • 8 ÷ 2 = 4 + 0;
  • 4 ÷ 2 = 2 + 0;
  • 2 ÷ 2 = 1 + 0;
  • 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.


11 010 111 010 110 100 000 000 000 000 059(10) =


1000 1010 1111 0111 1001 0110 0101 1110 1001 1111 0110 0101 1010 1000 1010 0110 1101 1111 1001 1011 1100 0010 0000 0000 0011 1011(2)


3. Normalize the binary representation of the number.

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


11 010 111 010 110 100 000 000 000 000 059(10) =


1000 1010 1111 0111 1001 0110 0101 1110 1001 1111 0110 0101 1010 1000 1010 0110 1101 1111 1001 1011 1100 0010 0000 0000 0011 1011(2) =


1000 1010 1111 0111 1001 0110 0101 1110 1001 1111 0110 0101 1010 1000 1010 0110 1101 1111 1001 1011 1100 0010 0000 0000 0011 1011(2) × 20 =


1.0001 0101 1110 1111 0010 1100 1011 1101 0011 1110 1100 1011 0101 0001 0100 1101 1011 1111 0011 0111 1000 0100 0000 0000 0111 011(2) × 2103


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


Mantissa (not normalized):
1.0001 0101 1110 1111 0010 1100 1011 1101 0011 1110 1100 1011 0101 0001 0100 1101 1011 1111 0011 0111 1000 0100 0000 0000 0111 011


5. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


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


103 + 2(8-1) - 1 =


(103 + 127)(10) =


230(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;
  • 230 ÷ 2 = 115 + 0;
  • 115 ÷ 2 = 57 + 1;
  • 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) =


230(10) =


1110 0110(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. 000 1010 1111 0111 1001 0110 0101 1110 1001 1111 0110 0101 1010 1000 1010 0110 1101 1111 1001 1011 1100 0010 0000 0000 0011 1011 =


000 1010 1111 0111 1001 0110


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 0110


Mantissa (23 bits) =
000 1010 1111 0111 1001 0110


The base ten decimal number 11 010 111 010 110 100 000 000 000 000 059 converted and written in 32 bit single precision IEEE 754 binary floating point representation:
0 - 1110 0110 - 000 1010 1111 0111 1001 0110

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

Number 228 343 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 UTC (GMT)
Number 117 350 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 UTC (GMT)
Number 69.383 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 UTC (GMT)
Number 0.000 000 977 517 106 549 364 613 880 748 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 UTC (GMT)
Number 12 724 558 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 UTC (GMT)
Number 21 998 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 UTC (GMT)
Number 203.01 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 UTC (GMT)
Number 17 926 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 UTC (GMT)
Number 116.723 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 UTC (GMT)
Number 129 077.909 2 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 05 09:53 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