0.000 000 000 000 000 000 000 000 006 14 Converted to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard

Convert decimal 0.000 000 000 000 000 000 000 000 006 14(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
0.000 000 000 000 000 000 000 000 006 14(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. First, convert to binary (in base 2) the integer part: 0.
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;
  • 0 ÷ 2 = 0 + 0;

2. Construct the base 2 representation of the integer part of the number.

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

0(10) =


0(2)


3. Convert to binary (base 2) the fractional part: 0.000 000 000 000 000 000 000 000 006 14.

Multiply it repeatedly by 2.


Keep track of each integer part of the results.


Stop when we get a fractional part that is equal to zero.


  • #) multiplying = integer + fractional part;
  • 1) 0.000 000 000 000 000 000 000 000 006 14 × 2 = 0 + 0.000 000 000 000 000 000 000 000 012 28;
  • 2) 0.000 000 000 000 000 000 000 000 012 28 × 2 = 0 + 0.000 000 000 000 000 000 000 000 024 56;
  • 3) 0.000 000 000 000 000 000 000 000 024 56 × 2 = 0 + 0.000 000 000 000 000 000 000 000 049 12;
  • 4) 0.000 000 000 000 000 000 000 000 049 12 × 2 = 0 + 0.000 000 000 000 000 000 000 000 098 24;
  • 5) 0.000 000 000 000 000 000 000 000 098 24 × 2 = 0 + 0.000 000 000 000 000 000 000 000 196 48;
  • 6) 0.000 000 000 000 000 000 000 000 196 48 × 2 = 0 + 0.000 000 000 000 000 000 000 000 392 96;
  • 7) 0.000 000 000 000 000 000 000 000 392 96 × 2 = 0 + 0.000 000 000 000 000 000 000 000 785 92;
  • 8) 0.000 000 000 000 000 000 000 000 785 92 × 2 = 0 + 0.000 000 000 000 000 000 000 001 571 84;
  • 9) 0.000 000 000 000 000 000 000 001 571 84 × 2 = 0 + 0.000 000 000 000 000 000 000 003 143 68;
  • 10) 0.000 000 000 000 000 000 000 003 143 68 × 2 = 0 + 0.000 000 000 000 000 000 000 006 287 36;
  • 11) 0.000 000 000 000 000 000 000 006 287 36 × 2 = 0 + 0.000 000 000 000 000 000 000 012 574 72;
  • 12) 0.000 000 000 000 000 000 000 012 574 72 × 2 = 0 + 0.000 000 000 000 000 000 000 025 149 44;
  • 13) 0.000 000 000 000 000 000 000 025 149 44 × 2 = 0 + 0.000 000 000 000 000 000 000 050 298 88;
  • 14) 0.000 000 000 000 000 000 000 050 298 88 × 2 = 0 + 0.000 000 000 000 000 000 000 100 597 76;
  • 15) 0.000 000 000 000 000 000 000 100 597 76 × 2 = 0 + 0.000 000 000 000 000 000 000 201 195 52;
  • 16) 0.000 000 000 000 000 000 000 201 195 52 × 2 = 0 + 0.000 000 000 000 000 000 000 402 391 04;
  • 17) 0.000 000 000 000 000 000 000 402 391 04 × 2 = 0 + 0.000 000 000 000 000 000 000 804 782 08;
  • 18) 0.000 000 000 000 000 000 000 804 782 08 × 2 = 0 + 0.000 000 000 000 000 000 001 609 564 16;
  • 19) 0.000 000 000 000 000 000 001 609 564 16 × 2 = 0 + 0.000 000 000 000 000 000 003 219 128 32;
  • 20) 0.000 000 000 000 000 000 003 219 128 32 × 2 = 0 + 0.000 000 000 000 000 000 006 438 256 64;
  • 21) 0.000 000 000 000 000 000 006 438 256 64 × 2 = 0 + 0.000 000 000 000 000 000 012 876 513 28;
  • 22) 0.000 000 000 000 000 000 012 876 513 28 × 2 = 0 + 0.000 000 000 000 000 000 025 753 026 56;
  • 23) 0.000 000 000 000 000 000 025 753 026 56 × 2 = 0 + 0.000 000 000 000 000 000 051 506 053 12;
  • 24) 0.000 000 000 000 000 000 051 506 053 12 × 2 = 0 + 0.000 000 000 000 000 000 103 012 106 24;
  • 25) 0.000 000 000 000 000 000 103 012 106 24 × 2 = 0 + 0.000 000 000 000 000 000 206 024 212 48;
  • 26) 0.000 000 000 000 000 000 206 024 212 48 × 2 = 0 + 0.000 000 000 000 000 000 412 048 424 96;
  • 27) 0.000 000 000 000 000 000 412 048 424 96 × 2 = 0 + 0.000 000 000 000 000 000 824 096 849 92;
  • 28) 0.000 000 000 000 000 000 824 096 849 92 × 2 = 0 + 0.000 000 000 000 000 001 648 193 699 84;
  • 29) 0.000 000 000 000 000 001 648 193 699 84 × 2 = 0 + 0.000 000 000 000 000 003 296 387 399 68;
  • 30) 0.000 000 000 000 000 003 296 387 399 68 × 2 = 0 + 0.000 000 000 000 000 006 592 774 799 36;
  • 31) 0.000 000 000 000 000 006 592 774 799 36 × 2 = 0 + 0.000 000 000 000 000 013 185 549 598 72;
  • 32) 0.000 000 000 000 000 013 185 549 598 72 × 2 = 0 + 0.000 000 000 000 000 026 371 099 197 44;
  • 33) 0.000 000 000 000 000 026 371 099 197 44 × 2 = 0 + 0.000 000 000 000 000 052 742 198 394 88;
  • 34) 0.000 000 000 000 000 052 742 198 394 88 × 2 = 0 + 0.000 000 000 000 000 105 484 396 789 76;
  • 35) 0.000 000 000 000 000 105 484 396 789 76 × 2 = 0 + 0.000 000 000 000 000 210 968 793 579 52;
  • 36) 0.000 000 000 000 000 210 968 793 579 52 × 2 = 0 + 0.000 000 000 000 000 421 937 587 159 04;
  • 37) 0.000 000 000 000 000 421 937 587 159 04 × 2 = 0 + 0.000 000 000 000 000 843 875 174 318 08;
  • 38) 0.000 000 000 000 000 843 875 174 318 08 × 2 = 0 + 0.000 000 000 000 001 687 750 348 636 16;
  • 39) 0.000 000 000 000 001 687 750 348 636 16 × 2 = 0 + 0.000 000 000 000 003 375 500 697 272 32;
  • 40) 0.000 000 000 000 003 375 500 697 272 32 × 2 = 0 + 0.000 000 000 000 006 751 001 394 544 64;
  • 41) 0.000 000 000 000 006 751 001 394 544 64 × 2 = 0 + 0.000 000 000 000 013 502 002 789 089 28;
  • 42) 0.000 000 000 000 013 502 002 789 089 28 × 2 = 0 + 0.000 000 000 000 027 004 005 578 178 56;
  • 43) 0.000 000 000 000 027 004 005 578 178 56 × 2 = 0 + 0.000 000 000 000 054 008 011 156 357 12;
  • 44) 0.000 000 000 000 054 008 011 156 357 12 × 2 = 0 + 0.000 000 000 000 108 016 022 312 714 24;
  • 45) 0.000 000 000 000 108 016 022 312 714 24 × 2 = 0 + 0.000 000 000 000 216 032 044 625 428 48;
  • 46) 0.000 000 000 000 216 032 044 625 428 48 × 2 = 0 + 0.000 000 000 000 432 064 089 250 856 96;
  • 47) 0.000 000 000 000 432 064 089 250 856 96 × 2 = 0 + 0.000 000 000 000 864 128 178 501 713 92;
  • 48) 0.000 000 000 000 864 128 178 501 713 92 × 2 = 0 + 0.000 000 000 001 728 256 357 003 427 84;
  • 49) 0.000 000 000 001 728 256 357 003 427 84 × 2 = 0 + 0.000 000 000 003 456 512 714 006 855 68;
  • 50) 0.000 000 000 003 456 512 714 006 855 68 × 2 = 0 + 0.000 000 000 006 913 025 428 013 711 36;
  • 51) 0.000 000 000 006 913 025 428 013 711 36 × 2 = 0 + 0.000 000 000 013 826 050 856 027 422 72;
  • 52) 0.000 000 000 013 826 050 856 027 422 72 × 2 = 0 + 0.000 000 000 027 652 101 712 054 845 44;
  • 53) 0.000 000 000 027 652 101 712 054 845 44 × 2 = 0 + 0.000 000 000 055 304 203 424 109 690 88;
  • 54) 0.000 000 000 055 304 203 424 109 690 88 × 2 = 0 + 0.000 000 000 110 608 406 848 219 381 76;
  • 55) 0.000 000 000 110 608 406 848 219 381 76 × 2 = 0 + 0.000 000 000 221 216 813 696 438 763 52;
  • 56) 0.000 000 000 221 216 813 696 438 763 52 × 2 = 0 + 0.000 000 000 442 433 627 392 877 527 04;
  • 57) 0.000 000 000 442 433 627 392 877 527 04 × 2 = 0 + 0.000 000 000 884 867 254 785 755 054 08;
  • 58) 0.000 000 000 884 867 254 785 755 054 08 × 2 = 0 + 0.000 000 001 769 734 509 571 510 108 16;
  • 59) 0.000 000 001 769 734 509 571 510 108 16 × 2 = 0 + 0.000 000 003 539 469 019 143 020 216 32;
  • 60) 0.000 000 003 539 469 019 143 020 216 32 × 2 = 0 + 0.000 000 007 078 938 038 286 040 432 64;
  • 61) 0.000 000 007 078 938 038 286 040 432 64 × 2 = 0 + 0.000 000 014 157 876 076 572 080 865 28;
  • 62) 0.000 000 014 157 876 076 572 080 865 28 × 2 = 0 + 0.000 000 028 315 752 153 144 161 730 56;
  • 63) 0.000 000 028 315 752 153 144 161 730 56 × 2 = 0 + 0.000 000 056 631 504 306 288 323 461 12;
  • 64) 0.000 000 056 631 504 306 288 323 461 12 × 2 = 0 + 0.000 000 113 263 008 612 576 646 922 24;
  • 65) 0.000 000 113 263 008 612 576 646 922 24 × 2 = 0 + 0.000 000 226 526 017 225 153 293 844 48;
  • 66) 0.000 000 226 526 017 225 153 293 844 48 × 2 = 0 + 0.000 000 453 052 034 450 306 587 688 96;
  • 67) 0.000 000 453 052 034 450 306 587 688 96 × 2 = 0 + 0.000 000 906 104 068 900 613 175 377 92;
  • 68) 0.000 000 906 104 068 900 613 175 377 92 × 2 = 0 + 0.000 001 812 208 137 801 226 350 755 84;
  • 69) 0.000 001 812 208 137 801 226 350 755 84 × 2 = 0 + 0.000 003 624 416 275 602 452 701 511 68;
  • 70) 0.000 003 624 416 275 602 452 701 511 68 × 2 = 0 + 0.000 007 248 832 551 204 905 403 023 36;
  • 71) 0.000 007 248 832 551 204 905 403 023 36 × 2 = 0 + 0.000 014 497 665 102 409 810 806 046 72;
  • 72) 0.000 014 497 665 102 409 810 806 046 72 × 2 = 0 + 0.000 028 995 330 204 819 621 612 093 44;
  • 73) 0.000 028 995 330 204 819 621 612 093 44 × 2 = 0 + 0.000 057 990 660 409 639 243 224 186 88;
  • 74) 0.000 057 990 660 409 639 243 224 186 88 × 2 = 0 + 0.000 115 981 320 819 278 486 448 373 76;
  • 75) 0.000 115 981 320 819 278 486 448 373 76 × 2 = 0 + 0.000 231 962 641 638 556 972 896 747 52;
  • 76) 0.000 231 962 641 638 556 972 896 747 52 × 2 = 0 + 0.000 463 925 283 277 113 945 793 495 04;
  • 77) 0.000 463 925 283 277 113 945 793 495 04 × 2 = 0 + 0.000 927 850 566 554 227 891 586 990 08;
  • 78) 0.000 927 850 566 554 227 891 586 990 08 × 2 = 0 + 0.001 855 701 133 108 455 783 173 980 16;
  • 79) 0.001 855 701 133 108 455 783 173 980 16 × 2 = 0 + 0.003 711 402 266 216 911 566 347 960 32;
  • 80) 0.003 711 402 266 216 911 566 347 960 32 × 2 = 0 + 0.007 422 804 532 433 823 132 695 920 64;
  • 81) 0.007 422 804 532 433 823 132 695 920 64 × 2 = 0 + 0.014 845 609 064 867 646 265 391 841 28;
  • 82) 0.014 845 609 064 867 646 265 391 841 28 × 2 = 0 + 0.029 691 218 129 735 292 530 783 682 56;
  • 83) 0.029 691 218 129 735 292 530 783 682 56 × 2 = 0 + 0.059 382 436 259 470 585 061 567 365 12;
  • 84) 0.059 382 436 259 470 585 061 567 365 12 × 2 = 0 + 0.118 764 872 518 941 170 123 134 730 24;
  • 85) 0.118 764 872 518 941 170 123 134 730 24 × 2 = 0 + 0.237 529 745 037 882 340 246 269 460 48;
  • 86) 0.237 529 745 037 882 340 246 269 460 48 × 2 = 0 + 0.475 059 490 075 764 680 492 538 920 96;
  • 87) 0.475 059 490 075 764 680 492 538 920 96 × 2 = 0 + 0.950 118 980 151 529 360 985 077 841 92;
  • 88) 0.950 118 980 151 529 360 985 077 841 92 × 2 = 1 + 0.900 237 960 303 058 721 970 155 683 84;
  • 89) 0.900 237 960 303 058 721 970 155 683 84 × 2 = 1 + 0.800 475 920 606 117 443 940 311 367 68;
  • 90) 0.800 475 920 606 117 443 940 311 367 68 × 2 = 1 + 0.600 951 841 212 234 887 880 622 735 36;
  • 91) 0.600 951 841 212 234 887 880 622 735 36 × 2 = 1 + 0.201 903 682 424 469 775 761 245 470 72;
  • 92) 0.201 903 682 424 469 775 761 245 470 72 × 2 = 0 + 0.403 807 364 848 939 551 522 490 941 44;
  • 93) 0.403 807 364 848 939 551 522 490 941 44 × 2 = 0 + 0.807 614 729 697 879 103 044 981 882 88;
  • 94) 0.807 614 729 697 879 103 044 981 882 88 × 2 = 1 + 0.615 229 459 395 758 206 089 963 765 76;
  • 95) 0.615 229 459 395 758 206 089 963 765 76 × 2 = 1 + 0.230 458 918 791 516 412 179 927 531 52;
  • 96) 0.230 458 918 791 516 412 179 927 531 52 × 2 = 0 + 0.460 917 837 583 032 824 359 855 063 04;
  • 97) 0.460 917 837 583 032 824 359 855 063 04 × 2 = 0 + 0.921 835 675 166 065 648 719 710 126 08;
  • 98) 0.921 835 675 166 065 648 719 710 126 08 × 2 = 1 + 0.843 671 350 332 131 297 439 420 252 16;
  • 99) 0.843 671 350 332 131 297 439 420 252 16 × 2 = 1 + 0.687 342 700 664 262 594 878 840 504 32;
  • 100) 0.687 342 700 664 262 594 878 840 504 32 × 2 = 1 + 0.374 685 401 328 525 189 757 681 008 64;
  • 101) 0.374 685 401 328 525 189 757 681 008 64 × 2 = 0 + 0.749 370 802 657 050 379 515 362 017 28;
  • 102) 0.749 370 802 657 050 379 515 362 017 28 × 2 = 1 + 0.498 741 605 314 100 759 030 724 034 56;
  • 103) 0.498 741 605 314 100 759 030 724 034 56 × 2 = 0 + 0.997 483 210 628 201 518 061 448 069 12;
  • 104) 0.997 483 210 628 201 518 061 448 069 12 × 2 = 1 + 0.994 966 421 256 403 036 122 896 138 24;
  • 105) 0.994 966 421 256 403 036 122 896 138 24 × 2 = 1 + 0.989 932 842 512 806 072 245 792 276 48;
  • 106) 0.989 932 842 512 806 072 245 792 276 48 × 2 = 1 + 0.979 865 685 025 612 144 491 584 552 96;
  • 107) 0.979 865 685 025 612 144 491 584 552 96 × 2 = 1 + 0.959 731 370 051 224 288 983 169 105 92;
  • 108) 0.959 731 370 051 224 288 983 169 105 92 × 2 = 1 + 0.919 462 740 102 448 577 966 338 211 84;
  • 109) 0.919 462 740 102 448 577 966 338 211 84 × 2 = 1 + 0.838 925 480 204 897 155 932 676 423 68;
  • 110) 0.838 925 480 204 897 155 932 676 423 68 × 2 = 1 + 0.677 850 960 409 794 311 865 352 847 36;
  • 111) 0.677 850 960 409 794 311 865 352 847 36 × 2 = 1 + 0.355 701 920 819 588 623 730 705 694 72;

We didn't get any fractional part that was equal to zero. But we had enough iterations (over Mantissa limit) and at least one integer that was different from zero => FULL STOP (Losing precision - the converted number we get in the end will be just a very good approximation of the initial one).


4. Construct the base 2 representation of the fractional part of the number.

Take all the integer parts of the multiplying operations, starting from the top of the constructed list above:


0.000 000 000 000 000 000 000 000 006 14(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 1110 0110 0111 0101 1111 111(2)

5. Positive number before normalization:

0.000 000 000 000 000 000 000 000 006 14(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 1110 0110 0111 0101 1111 111(2)

6. Normalize the binary representation of the number.

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


0.000 000 000 000 000 000 000 000 006 14(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 1110 0110 0111 0101 1111 111(2) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 1110 0110 0111 0101 1111 111(2) × 20 =


1.1110 0110 0111 0101 1111 111(2) × 2-88


7. 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): -88


Mantissa (not normalized):
1.1110 0110 0111 0101 1111 111


8. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


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


-88 + 2(8-1) - 1 =


(-88 + 127)(10) =


39(10)


9. 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;
  • 39 ÷ 2 = 19 + 1;
  • 19 ÷ 2 = 9 + 1;
  • 9 ÷ 2 = 4 + 1;
  • 4 ÷ 2 = 2 + 0;
  • 2 ÷ 2 = 1 + 0;
  • 1 ÷ 2 = 0 + 1;

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

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


Exponent (adjusted) =


39(10) =


0010 0111(2)


11. 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, only if necessary (not the case here).


Mantissa (normalized) =


1. 111 0011 0011 1010 1111 1111 =


111 0011 0011 1010 1111 1111


12. 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) =
0010 0111


Mantissa (23 bits) =
111 0011 0011 1010 1111 1111


Decimal number 0.000 000 000 000 000 000 000 000 006 14 converted to 32 bit single precision IEEE 754 binary floating point representation:

0 - 0010 0111 - 111 0011 0011 1010 1111 1111


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