Convert 340 282 346 638 528 859 811 704 183 484 516 925 015 to 32 Bit Single Precision IEEE 754 Binary Floating Point Standard, From a Base 10 Decimal Number

340 282 346 638 528 859 811 704 183 484 516 925 015(10) to 32 bit single precision IEEE 754 binary floating point (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;
  • 340 282 346 638 528 859 811 704 183 484 516 925 015 ÷ 2 = 170 141 173 319 264 429 905 852 091 742 258 462 507 + 1;
  • 170 141 173 319 264 429 905 852 091 742 258 462 507 ÷ 2 = 85 070 586 659 632 214 952 926 045 871 129 231 253 + 1;
  • 85 070 586 659 632 214 952 926 045 871 129 231 253 ÷ 2 = 42 535 293 329 816 107 476 463 022 935 564 615 626 + 1;
  • 42 535 293 329 816 107 476 463 022 935 564 615 626 ÷ 2 = 21 267 646 664 908 053 738 231 511 467 782 307 813 + 0;
  • 21 267 646 664 908 053 738 231 511 467 782 307 813 ÷ 2 = 10 633 823 332 454 026 869 115 755 733 891 153 906 + 1;
  • 10 633 823 332 454 026 869 115 755 733 891 153 906 ÷ 2 = 5 316 911 666 227 013 434 557 877 866 945 576 953 + 0;
  • 5 316 911 666 227 013 434 557 877 866 945 576 953 ÷ 2 = 2 658 455 833 113 506 717 278 938 933 472 788 476 + 1;
  • 2 658 455 833 113 506 717 278 938 933 472 788 476 ÷ 2 = 1 329 227 916 556 753 358 639 469 466 736 394 238 + 0;
  • 1 329 227 916 556 753 358 639 469 466 736 394 238 ÷ 2 = 664 613 958 278 376 679 319 734 733 368 197 119 + 0;
  • 664 613 958 278 376 679 319 734 733 368 197 119 ÷ 2 = 332 306 979 139 188 339 659 867 366 684 098 559 + 1;
  • 332 306 979 139 188 339 659 867 366 684 098 559 ÷ 2 = 166 153 489 569 594 169 829 933 683 342 049 279 + 1;
  • 166 153 489 569 594 169 829 933 683 342 049 279 ÷ 2 = 83 076 744 784 797 084 914 966 841 671 024 639 + 1;
  • 83 076 744 784 797 084 914 966 841 671 024 639 ÷ 2 = 41 538 372 392 398 542 457 483 420 835 512 319 + 1;
  • 41 538 372 392 398 542 457 483 420 835 512 319 ÷ 2 = 20 769 186 196 199 271 228 741 710 417 756 159 + 1;
  • 20 769 186 196 199 271 228 741 710 417 756 159 ÷ 2 = 10 384 593 098 099 635 614 370 855 208 878 079 + 1;
  • 10 384 593 098 099 635 614 370 855 208 878 079 ÷ 2 = 5 192 296 549 049 817 807 185 427 604 439 039 + 1;
  • 5 192 296 549 049 817 807 185 427 604 439 039 ÷ 2 = 2 596 148 274 524 908 903 592 713 802 219 519 + 1;
  • 2 596 148 274 524 908 903 592 713 802 219 519 ÷ 2 = 1 298 074 137 262 454 451 796 356 901 109 759 + 1;
  • 1 298 074 137 262 454 451 796 356 901 109 759 ÷ 2 = 649 037 068 631 227 225 898 178 450 554 879 + 1;
  • 649 037 068 631 227 225 898 178 450 554 879 ÷ 2 = 324 518 534 315 613 612 949 089 225 277 439 + 1;
  • 324 518 534 315 613 612 949 089 225 277 439 ÷ 2 = 162 259 267 157 806 806 474 544 612 638 719 + 1;
  • 162 259 267 157 806 806 474 544 612 638 719 ÷ 2 = 81 129 633 578 903 403 237 272 306 319 359 + 1;
  • 81 129 633 578 903 403 237 272 306 319 359 ÷ 2 = 40 564 816 789 451 701 618 636 153 159 679 + 1;
  • 40 564 816 789 451 701 618 636 153 159 679 ÷ 2 = 20 282 408 394 725 850 809 318 076 579 839 + 1;
  • 20 282 408 394 725 850 809 318 076 579 839 ÷ 2 = 10 141 204 197 362 925 404 659 038 289 919 + 1;
  • 10 141 204 197 362 925 404 659 038 289 919 ÷ 2 = 5 070 602 098 681 462 702 329 519 144 959 + 1;
  • 5 070 602 098 681 462 702 329 519 144 959 ÷ 2 = 2 535 301 049 340 731 351 164 759 572 479 + 1;
  • 2 535 301 049 340 731 351 164 759 572 479 ÷ 2 = 1 267 650 524 670 365 675 582 379 786 239 + 1;
  • 1 267 650 524 670 365 675 582 379 786 239 ÷ 2 = 633 825 262 335 182 837 791 189 893 119 + 1;
  • 633 825 262 335 182 837 791 189 893 119 ÷ 2 = 316 912 631 167 591 418 895 594 946 559 + 1;
  • 316 912 631 167 591 418 895 594 946 559 ÷ 2 = 158 456 315 583 795 709 447 797 473 279 + 1;
  • 158 456 315 583 795 709 447 797 473 279 ÷ 2 = 79 228 157 791 897 854 723 898 736 639 + 1;
  • 79 228 157 791 897 854 723 898 736 639 ÷ 2 = 39 614 078 895 948 927 361 949 368 319 + 1;
  • 39 614 078 895 948 927 361 949 368 319 ÷ 2 = 19 807 039 447 974 463 680 974 684 159 + 1;
  • 19 807 039 447 974 463 680 974 684 159 ÷ 2 = 9 903 519 723 987 231 840 487 342 079 + 1;
  • 9 903 519 723 987 231 840 487 342 079 ÷ 2 = 4 951 759 861 993 615 920 243 671 039 + 1;
  • 4 951 759 861 993 615 920 243 671 039 ÷ 2 = 2 475 879 930 996 807 960 121 835 519 + 1;
  • 2 475 879 930 996 807 960 121 835 519 ÷ 2 = 1 237 939 965 498 403 980 060 917 759 + 1;
  • 1 237 939 965 498 403 980 060 917 759 ÷ 2 = 618 969 982 749 201 990 030 458 879 + 1;
  • 618 969 982 749 201 990 030 458 879 ÷ 2 = 309 484 991 374 600 995 015 229 439 + 1;
  • 309 484 991 374 600 995 015 229 439 ÷ 2 = 154 742 495 687 300 497 507 614 719 + 1;
  • 154 742 495 687 300 497 507 614 719 ÷ 2 = 77 371 247 843 650 248 753 807 359 + 1;
  • 77 371 247 843 650 248 753 807 359 ÷ 2 = 38 685 623 921 825 124 376 903 679 + 1;
  • 38 685 623 921 825 124 376 903 679 ÷ 2 = 19 342 811 960 912 562 188 451 839 + 1;
  • 19 342 811 960 912 562 188 451 839 ÷ 2 = 9 671 405 980 456 281 094 225 919 + 1;
  • 9 671 405 980 456 281 094 225 919 ÷ 2 = 4 835 702 990 228 140 547 112 959 + 1;
  • 4 835 702 990 228 140 547 112 959 ÷ 2 = 2 417 851 495 114 070 273 556 479 + 1;
  • 2 417 851 495 114 070 273 556 479 ÷ 2 = 1 208 925 747 557 035 136 778 239 + 1;
  • 1 208 925 747 557 035 136 778 239 ÷ 2 = 604 462 873 778 517 568 389 119 + 1;
  • 604 462 873 778 517 568 389 119 ÷ 2 = 302 231 436 889 258 784 194 559 + 1;
  • 302 231 436 889 258 784 194 559 ÷ 2 = 151 115 718 444 629 392 097 279 + 1;
  • 151 115 718 444 629 392 097 279 ÷ 2 = 75 557 859 222 314 696 048 639 + 1;
  • 75 557 859 222 314 696 048 639 ÷ 2 = 37 778 929 611 157 348 024 319 + 1;
  • 37 778 929 611 157 348 024 319 ÷ 2 = 18 889 464 805 578 674 012 159 + 1;
  • 18 889 464 805 578 674 012 159 ÷ 2 = 9 444 732 402 789 337 006 079 + 1;
  • 9 444 732 402 789 337 006 079 ÷ 2 = 4 722 366 201 394 668 503 039 + 1;
  • 4 722 366 201 394 668 503 039 ÷ 2 = 2 361 183 100 697 334 251 519 + 1;
  • 2 361 183 100 697 334 251 519 ÷ 2 = 1 180 591 550 348 667 125 759 + 1;
  • 1 180 591 550 348 667 125 759 ÷ 2 = 590 295 775 174 333 562 879 + 1;
  • 590 295 775 174 333 562 879 ÷ 2 = 295 147 887 587 166 781 439 + 1;
  • 295 147 887 587 166 781 439 ÷ 2 = 147 573 943 793 583 390 719 + 1;
  • 147 573 943 793 583 390 719 ÷ 2 = 73 786 971 896 791 695 359 + 1;
  • 73 786 971 896 791 695 359 ÷ 2 = 36 893 485 948 395 847 679 + 1;
  • 36 893 485 948 395 847 679 ÷ 2 = 18 446 742 974 197 923 839 + 1;
  • 18 446 742 974 197 923 839 ÷ 2 = 9 223 371 487 098 961 919 + 1;
  • 9 223 371 487 098 961 919 ÷ 2 = 4 611 685 743 549 480 959 + 1;
  • 4 611 685 743 549 480 959 ÷ 2 = 2 305 842 871 774 740 479 + 1;
  • 2 305 842 871 774 740 479 ÷ 2 = 1 152 921 435 887 370 239 + 1;
  • 1 152 921 435 887 370 239 ÷ 2 = 576 460 717 943 685 119 + 1;
  • 576 460 717 943 685 119 ÷ 2 = 288 230 358 971 842 559 + 1;
  • 288 230 358 971 842 559 ÷ 2 = 144 115 179 485 921 279 + 1;
  • 144 115 179 485 921 279 ÷ 2 = 72 057 589 742 960 639 + 1;
  • 72 057 589 742 960 639 ÷ 2 = 36 028 794 871 480 319 + 1;
  • 36 028 794 871 480 319 ÷ 2 = 18 014 397 435 740 159 + 1;
  • 18 014 397 435 740 159 ÷ 2 = 9 007 198 717 870 079 + 1;
  • 9 007 198 717 870 079 ÷ 2 = 4 503 599 358 935 039 + 1;
  • 4 503 599 358 935 039 ÷ 2 = 2 251 799 679 467 519 + 1;
  • 2 251 799 679 467 519 ÷ 2 = 1 125 899 839 733 759 + 1;
  • 1 125 899 839 733 759 ÷ 2 = 562 949 919 866 879 + 1;
  • 562 949 919 866 879 ÷ 2 = 281 474 959 933 439 + 1;
  • 281 474 959 933 439 ÷ 2 = 140 737 479 966 719 + 1;
  • 140 737 479 966 719 ÷ 2 = 70 368 739 983 359 + 1;
  • 70 368 739 983 359 ÷ 2 = 35 184 369 991 679 + 1;
  • 35 184 369 991 679 ÷ 2 = 17 592 184 995 839 + 1;
  • 17 592 184 995 839 ÷ 2 = 8 796 092 497 919 + 1;
  • 8 796 092 497 919 ÷ 2 = 4 398 046 248 959 + 1;
  • 4 398 046 248 959 ÷ 2 = 2 199 023 124 479 + 1;
  • 2 199 023 124 479 ÷ 2 = 1 099 511 562 239 + 1;
  • 1 099 511 562 239 ÷ 2 = 549 755 781 119 + 1;
  • 549 755 781 119 ÷ 2 = 274 877 890 559 + 1;
  • 274 877 890 559 ÷ 2 = 137 438 945 279 + 1;
  • 137 438 945 279 ÷ 2 = 68 719 472 639 + 1;
  • 68 719 472 639 ÷ 2 = 34 359 736 319 + 1;
  • 34 359 736 319 ÷ 2 = 17 179 868 159 + 1;
  • 17 179 868 159 ÷ 2 = 8 589 934 079 + 1;
  • 8 589 934 079 ÷ 2 = 4 294 967 039 + 1;
  • 4 294 967 039 ÷ 2 = 2 147 483 519 + 1;
  • 2 147 483 519 ÷ 2 = 1 073 741 759 + 1;
  • 1 073 741 759 ÷ 2 = 536 870 879 + 1;
  • 536 870 879 ÷ 2 = 268 435 439 + 1;
  • 268 435 439 ÷ 2 = 134 217 719 + 1;
  • 134 217 719 ÷ 2 = 67 108 859 + 1;
  • 67 108 859 ÷ 2 = 33 554 429 + 1;
  • 33 554 429 ÷ 2 = 16 777 214 + 1;
  • 16 777 214 ÷ 2 = 8 388 607 + 0;
  • 8 388 607 ÷ 2 = 4 194 303 + 1;
  • 4 194 303 ÷ 2 = 2 097 151 + 1;
  • 2 097 151 ÷ 2 = 1 048 575 + 1;
  • 1 048 575 ÷ 2 = 524 287 + 1;
  • 524 287 ÷ 2 = 262 143 + 1;
  • 262 143 ÷ 2 = 131 071 + 1;
  • 131 071 ÷ 2 = 65 535 + 1;
  • 65 535 ÷ 2 = 32 767 + 1;
  • 32 767 ÷ 2 = 16 383 + 1;
  • 16 383 ÷ 2 = 8 191 + 1;
  • 8 191 ÷ 2 = 4 095 + 1;
  • 4 095 ÷ 2 = 2 047 + 1;
  • 2 047 ÷ 2 = 1 023 + 1;
  • 1 023 ÷ 2 = 511 + 1;
  • 511 ÷ 2 = 255 + 1;
  • 255 ÷ 2 = 127 + 1;
  • 127 ÷ 2 = 63 + 1;
  • 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.

340 282 346 638 528 859 811 704 183 484 516 925 015(10) =


1111 1111 1111 1111 1111 1110 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1110 0101 0111(2)


3. Normalize the binary representation of the number.

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

340 282 346 638 528 859 811 704 183 484 516 925 015(10) =


1111 1111 1111 1111 1111 1110 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1110 0101 0111(2) =


1111 1111 1111 1111 1111 1110 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1110 0101 0111(2) × 20 =


1.1111 1111 1111 1111 1111 1101 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1100 1010 111(2) × 2127


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


Mantissa (not normalized):
1.1111 1111 1111 1111 1111 1101 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1100 1010 111


5. Adjust the exponent.

Use the 8 bit excess/bias notation:

Exponent (adjusted) =


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


127 + 2(8-1) - 1 =


(127 + 127)(10) =


254(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;
  • 254 ÷ 2 = 127 + 0;
  • 127 ÷ 2 = 63 + 1;
  • 63 ÷ 2 = 31 + 1;
  • 31 ÷ 2 = 15 + 1;
  • 15 ÷ 2 = 7 + 1;
  • 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) =


254(10) =


1111 1110(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 1111 1111 1111 1111 1110 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1111 1110 0101 0111 =


111 1111 1111 1111 1111 1110


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


Mantissa (23 bits) =
111 1111 1111 1111 1111 1110


Number 340 282 346 638 528 859 811 704 183 484 516 925 015 converted from decimal system (base 10) to 32 bit single precision IEEE 754 binary floating point:
0 - 1111 1110 - 111 1111 1111 1111 1111 1110

(32 bits IEEE 754)
  • Sign (1 bit):

    • 0

      31
  • Exponent (8 bits):

    • 1

      30
    • 1

      29
    • 1

      28
    • 1

      27
    • 1

      26
    • 1

      25
    • 1

      24
    • 0

      23
  • Mantissa (23 bits):

    • 1

      22
    • 1

      21
    • 1

      20
    • 1

      19
    • 1

      18
    • 1

      17
    • 1

      16
    • 1

      15
    • 1

      14
    • 1

      13
    • 1

      12
    • 1

      11
    • 1

      10
    • 1

      9
    • 1

      8
    • 1

      7
    • 1

      6
    • 1

      5
    • 1

      4
    • 1

      3
    • 1

      2
    • 1

      1
    • 0

      0

More operations of this kind:

340 282 346 638 528 859 811 704 183 484 516 925 014 = ? ... 340 282 346 638 528 859 811 704 183 484 516 925 016 = ?


Convert to 32 bit single precision IEEE 754 binary floating point standard

A number in 32 bit single precision IEEE 754 binary floating point standard representation requires three building elements: sign (it takes 1 bit and it's either 0 for positive or 1 for negative numbers), exponent (8 bits) and mantissa (23 bits)

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

340 282 346 638 528 859 811 704 183 484 516 925 015 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
34.896 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
43 707 994 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
-202.062 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
-6 666.050 7 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
15.186 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
37 119 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
22.104 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
-1 240.2 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
-192.29 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
2 341.39 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
19 002.5 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 UTC (GMT)
4.529 to 32 bit single precision IEEE 754 binary floating point = ? Jun 13 23:01 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