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

Number 101 111 110 100 000 000 000 000 000 000 085(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;
  • 101 111 110 100 000 000 000 000 000 000 085 ÷ 2 = 50 555 555 050 000 000 000 000 000 000 042 + 1;
  • 50 555 555 050 000 000 000 000 000 000 042 ÷ 2 = 25 277 777 525 000 000 000 000 000 000 021 + 0;
  • 25 277 777 525 000 000 000 000 000 000 021 ÷ 2 = 12 638 888 762 500 000 000 000 000 000 010 + 1;
  • 12 638 888 762 500 000 000 000 000 000 010 ÷ 2 = 6 319 444 381 250 000 000 000 000 000 005 + 0;
  • 6 319 444 381 250 000 000 000 000 000 005 ÷ 2 = 3 159 722 190 625 000 000 000 000 000 002 + 1;
  • 3 159 722 190 625 000 000 000 000 000 002 ÷ 2 = 1 579 861 095 312 500 000 000 000 000 001 + 0;
  • 1 579 861 095 312 500 000 000 000 000 001 ÷ 2 = 789 930 547 656 250 000 000 000 000 000 + 1;
  • 789 930 547 656 250 000 000 000 000 000 ÷ 2 = 394 965 273 828 125 000 000 000 000 000 + 0;
  • 394 965 273 828 125 000 000 000 000 000 ÷ 2 = 197 482 636 914 062 500 000 000 000 000 + 0;
  • 197 482 636 914 062 500 000 000 000 000 ÷ 2 = 98 741 318 457 031 250 000 000 000 000 + 0;
  • 98 741 318 457 031 250 000 000 000 000 ÷ 2 = 49 370 659 228 515 625 000 000 000 000 + 0;
  • 49 370 659 228 515 625 000 000 000 000 ÷ 2 = 24 685 329 614 257 812 500 000 000 000 + 0;
  • 24 685 329 614 257 812 500 000 000 000 ÷ 2 = 12 342 664 807 128 906 250 000 000 000 + 0;
  • 12 342 664 807 128 906 250 000 000 000 ÷ 2 = 6 171 332 403 564 453 125 000 000 000 + 0;
  • 6 171 332 403 564 453 125 000 000 000 ÷ 2 = 3 085 666 201 782 226 562 500 000 000 + 0;
  • 3 085 666 201 782 226 562 500 000 000 ÷ 2 = 1 542 833 100 891 113 281 250 000 000 + 0;
  • 1 542 833 100 891 113 281 250 000 000 ÷ 2 = 771 416 550 445 556 640 625 000 000 + 0;
  • 771 416 550 445 556 640 625 000 000 ÷ 2 = 385 708 275 222 778 320 312 500 000 + 0;
  • 385 708 275 222 778 320 312 500 000 ÷ 2 = 192 854 137 611 389 160 156 250 000 + 0;
  • 192 854 137 611 389 160 156 250 000 ÷ 2 = 96 427 068 805 694 580 078 125 000 + 0;
  • 96 427 068 805 694 580 078 125 000 ÷ 2 = 48 213 534 402 847 290 039 062 500 + 0;
  • 48 213 534 402 847 290 039 062 500 ÷ 2 = 24 106 767 201 423 645 019 531 250 + 0;
  • 24 106 767 201 423 645 019 531 250 ÷ 2 = 12 053 383 600 711 822 509 765 625 + 0;
  • 12 053 383 600 711 822 509 765 625 ÷ 2 = 6 026 691 800 355 911 254 882 812 + 1;
  • 6 026 691 800 355 911 254 882 812 ÷ 2 = 3 013 345 900 177 955 627 441 406 + 0;
  • 3 013 345 900 177 955 627 441 406 ÷ 2 = 1 506 672 950 088 977 813 720 703 + 0;
  • 1 506 672 950 088 977 813 720 703 ÷ 2 = 753 336 475 044 488 906 860 351 + 1;
  • 753 336 475 044 488 906 860 351 ÷ 2 = 376 668 237 522 244 453 430 175 + 1;
  • 376 668 237 522 244 453 430 175 ÷ 2 = 188 334 118 761 122 226 715 087 + 1;
  • 188 334 118 761 122 226 715 087 ÷ 2 = 94 167 059 380 561 113 357 543 + 1;
  • 94 167 059 380 561 113 357 543 ÷ 2 = 47 083 529 690 280 556 678 771 + 1;
  • 47 083 529 690 280 556 678 771 ÷ 2 = 23 541 764 845 140 278 339 385 + 1;
  • 23 541 764 845 140 278 339 385 ÷ 2 = 11 770 882 422 570 139 169 692 + 1;
  • 11 770 882 422 570 139 169 692 ÷ 2 = 5 885 441 211 285 069 584 846 + 0;
  • 5 885 441 211 285 069 584 846 ÷ 2 = 2 942 720 605 642 534 792 423 + 0;
  • 2 942 720 605 642 534 792 423 ÷ 2 = 1 471 360 302 821 267 396 211 + 1;
  • 1 471 360 302 821 267 396 211 ÷ 2 = 735 680 151 410 633 698 105 + 1;
  • 735 680 151 410 633 698 105 ÷ 2 = 367 840 075 705 316 849 052 + 1;
  • 367 840 075 705 316 849 052 ÷ 2 = 183 920 037 852 658 424 526 + 0;
  • 183 920 037 852 658 424 526 ÷ 2 = 91 960 018 926 329 212 263 + 0;
  • 91 960 018 926 329 212 263 ÷ 2 = 45 980 009 463 164 606 131 + 1;
  • 45 980 009 463 164 606 131 ÷ 2 = 22 990 004 731 582 303 065 + 1;
  • 22 990 004 731 582 303 065 ÷ 2 = 11 495 002 365 791 151 532 + 1;
  • 11 495 002 365 791 151 532 ÷ 2 = 5 747 501 182 895 575 766 + 0;
  • 5 747 501 182 895 575 766 ÷ 2 = 2 873 750 591 447 787 883 + 0;
  • 2 873 750 591 447 787 883 ÷ 2 = 1 436 875 295 723 893 941 + 1;
  • 1 436 875 295 723 893 941 ÷ 2 = 718 437 647 861 946 970 + 1;
  • 718 437 647 861 946 970 ÷ 2 = 359 218 823 930 973 485 + 0;
  • 359 218 823 930 973 485 ÷ 2 = 179 609 411 965 486 742 + 1;
  • 179 609 411 965 486 742 ÷ 2 = 89 804 705 982 743 371 + 0;
  • 89 804 705 982 743 371 ÷ 2 = 44 902 352 991 371 685 + 1;
  • 44 902 352 991 371 685 ÷ 2 = 22 451 176 495 685 842 + 1;
  • 22 451 176 495 685 842 ÷ 2 = 11 225 588 247 842 921 + 0;
  • 11 225 588 247 842 921 ÷ 2 = 5 612 794 123 921 460 + 1;
  • 5 612 794 123 921 460 ÷ 2 = 2 806 397 061 960 730 + 0;
  • 2 806 397 061 960 730 ÷ 2 = 1 403 198 530 980 365 + 0;
  • 1 403 198 530 980 365 ÷ 2 = 701 599 265 490 182 + 1;
  • 701 599 265 490 182 ÷ 2 = 350 799 632 745 091 + 0;
  • 350 799 632 745 091 ÷ 2 = 175 399 816 372 545 + 1;
  • 175 399 816 372 545 ÷ 2 = 87 699 908 186 272 + 1;
  • 87 699 908 186 272 ÷ 2 = 43 849 954 093 136 + 0;
  • 43 849 954 093 136 ÷ 2 = 21 924 977 046 568 + 0;
  • 21 924 977 046 568 ÷ 2 = 10 962 488 523 284 + 0;
  • 10 962 488 523 284 ÷ 2 = 5 481 244 261 642 + 0;
  • 5 481 244 261 642 ÷ 2 = 2 740 622 130 821 + 0;
  • 2 740 622 130 821 ÷ 2 = 1 370 311 065 410 + 1;
  • 1 370 311 065 410 ÷ 2 = 685 155 532 705 + 0;
  • 685 155 532 705 ÷ 2 = 342 577 766 352 + 1;
  • 342 577 766 352 ÷ 2 = 171 288 883 176 + 0;
  • 171 288 883 176 ÷ 2 = 85 644 441 588 + 0;
  • 85 644 441 588 ÷ 2 = 42 822 220 794 + 0;
  • 42 822 220 794 ÷ 2 = 21 411 110 397 + 0;
  • 21 411 110 397 ÷ 2 = 10 705 555 198 + 1;
  • 10 705 555 198 ÷ 2 = 5 352 777 599 + 0;
  • 5 352 777 599 ÷ 2 = 2 676 388 799 + 1;
  • 2 676 388 799 ÷ 2 = 1 338 194 399 + 1;
  • 1 338 194 399 ÷ 2 = 669 097 199 + 1;
  • 669 097 199 ÷ 2 = 334 548 599 + 1;
  • 334 548 599 ÷ 2 = 167 274 299 + 1;
  • 167 274 299 ÷ 2 = 83 637 149 + 1;
  • 83 637 149 ÷ 2 = 41 818 574 + 1;
  • 41 818 574 ÷ 2 = 20 909 287 + 0;
  • 20 909 287 ÷ 2 = 10 454 643 + 1;
  • 10 454 643 ÷ 2 = 5 227 321 + 1;
  • 5 227 321 ÷ 2 = 2 613 660 + 1;
  • 2 613 660 ÷ 2 = 1 306 830 + 0;
  • 1 306 830 ÷ 2 = 653 415 + 0;
  • 653 415 ÷ 2 = 326 707 + 1;
  • 326 707 ÷ 2 = 163 353 + 1;
  • 163 353 ÷ 2 = 81 676 + 1;
  • 81 676 ÷ 2 = 40 838 + 0;
  • 40 838 ÷ 2 = 20 419 + 0;
  • 20 419 ÷ 2 = 10 209 + 1;
  • 10 209 ÷ 2 = 5 104 + 1;
  • 5 104 ÷ 2 = 2 552 + 0;
  • 2 552 ÷ 2 = 1 276 + 0;
  • 1 276 ÷ 2 = 638 + 0;
  • 638 ÷ 2 = 319 + 0;
  • 319 ÷ 2 = 159 + 1;
  • 159 ÷ 2 = 79 + 1;
  • 79 ÷ 2 = 39 + 1;
  • 39 ÷ 2 = 19 + 1;
  • 19 ÷ 2 = 9 + 1;
  • 9 ÷ 2 = 4 + 1;
  • 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.


101 111 110 100 000 000 000 000 000 000 085(10) =


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


3. Normalize the binary representation of the number.

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


101 111 110 100 000 000 000 000 000 000 085(10) =


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


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


1.0011 1111 0000 1100 1110 0111 0111 1111 0100 0010 1000 0011 0100 1011 0101 1001 1100 1110 0111 1111 0010 0000 0000 0000 0001 0101 01(2) × 2106


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


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


5. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


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


106 + 2(8-1) - 1 =


(106 + 127)(10) =


233(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;
  • 233 ÷ 2 = 116 + 1;
  • 116 ÷ 2 = 58 + 0;
  • 58 ÷ 2 = 29 + 0;
  • 29 ÷ 2 = 14 + 1;
  • 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) =


233(10) =


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


001 1111 1000 0110 0111 0011


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 1001


Mantissa (23 bits) =
001 1111 1000 0110 0111 0011


The base ten decimal number 101 111 110 100 000 000 000 000 000 000 085 converted and written in 32 bit single precision IEEE 754 binary floating point representation:
0 - 1110 1001 - 001 1111 1000 0110 0111 0011

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

Number 8.49 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02:14 UTC (GMT)
Number 60.47 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02:14 UTC (GMT)
Number -1.001 1 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02:14 UTC (GMT)
Number 420 483 206 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02:14 UTC (GMT)
Number 10 100 000 100 999 999 999 999 999 928 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02:14 UTC (GMT)
Number 199 149 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02:14 UTC (GMT)
Number -771 530 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02:14 UTC (GMT)
Number -4 227 596 342 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02:14 UTC (GMT)
Number -1 234.566 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02:14 UTC (GMT)
Number -0.000 781 170 7 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 22 02: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