11 001 001 011 101 110 000 000 000 000 376 Converted to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard

Convert decimal 11 001 001 011 101 110 000 000 000 000 376(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
11 001 001 011 101 110 000 000 000 000 376(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. 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 001 001 011 101 110 000 000 000 000 376 ÷ 2 = 5 500 500 505 550 555 000 000 000 000 188 + 0;
  • 5 500 500 505 550 555 000 000 000 000 188 ÷ 2 = 2 750 250 252 775 277 500 000 000 000 094 + 0;
  • 2 750 250 252 775 277 500 000 000 000 094 ÷ 2 = 1 375 125 126 387 638 750 000 000 000 047 + 0;
  • 1 375 125 126 387 638 750 000 000 000 047 ÷ 2 = 687 562 563 193 819 375 000 000 000 023 + 1;
  • 687 562 563 193 819 375 000 000 000 023 ÷ 2 = 343 781 281 596 909 687 500 000 000 011 + 1;
  • 343 781 281 596 909 687 500 000 000 011 ÷ 2 = 171 890 640 798 454 843 750 000 000 005 + 1;
  • 171 890 640 798 454 843 750 000 000 005 ÷ 2 = 85 945 320 399 227 421 875 000 000 002 + 1;
  • 85 945 320 399 227 421 875 000 000 002 ÷ 2 = 42 972 660 199 613 710 937 500 000 001 + 0;
  • 42 972 660 199 613 710 937 500 000 001 ÷ 2 = 21 486 330 099 806 855 468 750 000 000 + 1;
  • 21 486 330 099 806 855 468 750 000 000 ÷ 2 = 10 743 165 049 903 427 734 375 000 000 + 0;
  • 10 743 165 049 903 427 734 375 000 000 ÷ 2 = 5 371 582 524 951 713 867 187 500 000 + 0;
  • 5 371 582 524 951 713 867 187 500 000 ÷ 2 = 2 685 791 262 475 856 933 593 750 000 + 0;
  • 2 685 791 262 475 856 933 593 750 000 ÷ 2 = 1 342 895 631 237 928 466 796 875 000 + 0;
  • 1 342 895 631 237 928 466 796 875 000 ÷ 2 = 671 447 815 618 964 233 398 437 500 + 0;
  • 671 447 815 618 964 233 398 437 500 ÷ 2 = 335 723 907 809 482 116 699 218 750 + 0;
  • 335 723 907 809 482 116 699 218 750 ÷ 2 = 167 861 953 904 741 058 349 609 375 + 0;
  • 167 861 953 904 741 058 349 609 375 ÷ 2 = 83 930 976 952 370 529 174 804 687 + 1;
  • 83 930 976 952 370 529 174 804 687 ÷ 2 = 41 965 488 476 185 264 587 402 343 + 1;
  • 41 965 488 476 185 264 587 402 343 ÷ 2 = 20 982 744 238 092 632 293 701 171 + 1;
  • 20 982 744 238 092 632 293 701 171 ÷ 2 = 10 491 372 119 046 316 146 850 585 + 1;
  • 10 491 372 119 046 316 146 850 585 ÷ 2 = 5 245 686 059 523 158 073 425 292 + 1;
  • 5 245 686 059 523 158 073 425 292 ÷ 2 = 2 622 843 029 761 579 036 712 646 + 0;
  • 2 622 843 029 761 579 036 712 646 ÷ 2 = 1 311 421 514 880 789 518 356 323 + 0;
  • 1 311 421 514 880 789 518 356 323 ÷ 2 = 655 710 757 440 394 759 178 161 + 1;
  • 655 710 757 440 394 759 178 161 ÷ 2 = 327 855 378 720 197 379 589 080 + 1;
  • 327 855 378 720 197 379 589 080 ÷ 2 = 163 927 689 360 098 689 794 540 + 0;
  • 163 927 689 360 098 689 794 540 ÷ 2 = 81 963 844 680 049 344 897 270 + 0;
  • 81 963 844 680 049 344 897 270 ÷ 2 = 40 981 922 340 024 672 448 635 + 0;
  • 40 981 922 340 024 672 448 635 ÷ 2 = 20 490 961 170 012 336 224 317 + 1;
  • 20 490 961 170 012 336 224 317 ÷ 2 = 10 245 480 585 006 168 112 158 + 1;
  • 10 245 480 585 006 168 112 158 ÷ 2 = 5 122 740 292 503 084 056 079 + 0;
  • 5 122 740 292 503 084 056 079 ÷ 2 = 2 561 370 146 251 542 028 039 + 1;
  • 2 561 370 146 251 542 028 039 ÷ 2 = 1 280 685 073 125 771 014 019 + 1;
  • 1 280 685 073 125 771 014 019 ÷ 2 = 640 342 536 562 885 507 009 + 1;
  • 640 342 536 562 885 507 009 ÷ 2 = 320 171 268 281 442 753 504 + 1;
  • 320 171 268 281 442 753 504 ÷ 2 = 160 085 634 140 721 376 752 + 0;
  • 160 085 634 140 721 376 752 ÷ 2 = 80 042 817 070 360 688 376 + 0;
  • 80 042 817 070 360 688 376 ÷ 2 = 40 021 408 535 180 344 188 + 0;
  • 40 021 408 535 180 344 188 ÷ 2 = 20 010 704 267 590 172 094 + 0;
  • 20 010 704 267 590 172 094 ÷ 2 = 10 005 352 133 795 086 047 + 0;
  • 10 005 352 133 795 086 047 ÷ 2 = 5 002 676 066 897 543 023 + 1;
  • 5 002 676 066 897 543 023 ÷ 2 = 2 501 338 033 448 771 511 + 1;
  • 2 501 338 033 448 771 511 ÷ 2 = 1 250 669 016 724 385 755 + 1;
  • 1 250 669 016 724 385 755 ÷ 2 = 625 334 508 362 192 877 + 1;
  • 625 334 508 362 192 877 ÷ 2 = 312 667 254 181 096 438 + 1;
  • 312 667 254 181 096 438 ÷ 2 = 156 333 627 090 548 219 + 0;
  • 156 333 627 090 548 219 ÷ 2 = 78 166 813 545 274 109 + 1;
  • 78 166 813 545 274 109 ÷ 2 = 39 083 406 772 637 054 + 1;
  • 39 083 406 772 637 054 ÷ 2 = 19 541 703 386 318 527 + 0;
  • 19 541 703 386 318 527 ÷ 2 = 9 770 851 693 159 263 + 1;
  • 9 770 851 693 159 263 ÷ 2 = 4 885 425 846 579 631 + 1;
  • 4 885 425 846 579 631 ÷ 2 = 2 442 712 923 289 815 + 1;
  • 2 442 712 923 289 815 ÷ 2 = 1 221 356 461 644 907 + 1;
  • 1 221 356 461 644 907 ÷ 2 = 610 678 230 822 453 + 1;
  • 610 678 230 822 453 ÷ 2 = 305 339 115 411 226 + 1;
  • 305 339 115 411 226 ÷ 2 = 152 669 557 705 613 + 0;
  • 152 669 557 705 613 ÷ 2 = 76 334 778 852 806 + 1;
  • 76 334 778 852 806 ÷ 2 = 38 167 389 426 403 + 0;
  • 38 167 389 426 403 ÷ 2 = 19 083 694 713 201 + 1;
  • 19 083 694 713 201 ÷ 2 = 9 541 847 356 600 + 1;
  • 9 541 847 356 600 ÷ 2 = 4 770 923 678 300 + 0;
  • 4 770 923 678 300 ÷ 2 = 2 385 461 839 150 + 0;
  • 2 385 461 839 150 ÷ 2 = 1 192 730 919 575 + 0;
  • 1 192 730 919 575 ÷ 2 = 596 365 459 787 + 1;
  • 596 365 459 787 ÷ 2 = 298 182 729 893 + 1;
  • 298 182 729 893 ÷ 2 = 149 091 364 946 + 1;
  • 149 091 364 946 ÷ 2 = 74 545 682 473 + 0;
  • 74 545 682 473 ÷ 2 = 37 272 841 236 + 1;
  • 37 272 841 236 ÷ 2 = 18 636 420 618 + 0;
  • 18 636 420 618 ÷ 2 = 9 318 210 309 + 0;
  • 9 318 210 309 ÷ 2 = 4 659 105 154 + 1;
  • 4 659 105 154 ÷ 2 = 2 329 552 577 + 0;
  • 2 329 552 577 ÷ 2 = 1 164 776 288 + 1;
  • 1 164 776 288 ÷ 2 = 582 388 144 + 0;
  • 582 388 144 ÷ 2 = 291 194 072 + 0;
  • 291 194 072 ÷ 2 = 145 597 036 + 0;
  • 145 597 036 ÷ 2 = 72 798 518 + 0;
  • 72 798 518 ÷ 2 = 36 399 259 + 0;
  • 36 399 259 ÷ 2 = 18 199 629 + 1;
  • 18 199 629 ÷ 2 = 9 099 814 + 1;
  • 9 099 814 ÷ 2 = 4 549 907 + 0;
  • 4 549 907 ÷ 2 = 2 274 953 + 1;
  • 2 274 953 ÷ 2 = 1 137 476 + 1;
  • 1 137 476 ÷ 2 = 568 738 + 0;
  • 568 738 ÷ 2 = 284 369 + 0;
  • 284 369 ÷ 2 = 142 184 + 1;
  • 142 184 ÷ 2 = 71 092 + 0;
  • 71 092 ÷ 2 = 35 546 + 0;
  • 35 546 ÷ 2 = 17 773 + 0;
  • 17 773 ÷ 2 = 8 886 + 1;
  • 8 886 ÷ 2 = 4 443 + 0;
  • 4 443 ÷ 2 = 2 221 + 1;
  • 2 221 ÷ 2 = 1 110 + 1;
  • 1 110 ÷ 2 = 555 + 0;
  • 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 001 001 011 101 110 000 000 000 000 376(10) =


1000 1010 1101 1010 0010 0110 1100 0001 0100 1011 1000 1101 0111 1110 1101 1111 0000 0111 1011 0001 1001 1111 0000 0001 0111 1000(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 001 001 011 101 110 000 000 000 000 376(10) =


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


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


1.0001 0101 1011 0100 0100 1101 1000 0010 1001 0111 0001 1010 1111 1101 1011 1110 0000 1111 0110 0011 0011 1110 0000 0010 1111 000(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 1011 0100 0100 1101 1000 0010 1001 0111 0001 1010 1111 1101 1011 1110 0000 1111 0110 0011 0011 1110 0000 0010 1111 000


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 1101 1010 0010 0110 1100 0001 0100 1011 1000 1101 0111 1110 1101 1111 0000 0111 1011 0001 1001 1111 0000 0001 0111 1000 =


000 1010 1101 1010 0010 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 1101 1010 0010 0110


Decimal number 11 001 001 011 101 110 000 000 000 000 376 converted to 32 bit single precision IEEE 754 binary floating point representation:

0 - 1110 0110 - 000 1010 1101 1010 0010 0110


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