0.000 000 000 000 000 000 000 000 006 34 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 34(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 34(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 34.

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 34 × 2 = 0 + 0.000 000 000 000 000 000 000 000 012 68;
  • 2) 0.000 000 000 000 000 000 000 000 012 68 × 2 = 0 + 0.000 000 000 000 000 000 000 000 025 36;
  • 3) 0.000 000 000 000 000 000 000 000 025 36 × 2 = 0 + 0.000 000 000 000 000 000 000 000 050 72;
  • 4) 0.000 000 000 000 000 000 000 000 050 72 × 2 = 0 + 0.000 000 000 000 000 000 000 000 101 44;
  • 5) 0.000 000 000 000 000 000 000 000 101 44 × 2 = 0 + 0.000 000 000 000 000 000 000 000 202 88;
  • 6) 0.000 000 000 000 000 000 000 000 202 88 × 2 = 0 + 0.000 000 000 000 000 000 000 000 405 76;
  • 7) 0.000 000 000 000 000 000 000 000 405 76 × 2 = 0 + 0.000 000 000 000 000 000 000 000 811 52;
  • 8) 0.000 000 000 000 000 000 000 000 811 52 × 2 = 0 + 0.000 000 000 000 000 000 000 001 623 04;
  • 9) 0.000 000 000 000 000 000 000 001 623 04 × 2 = 0 + 0.000 000 000 000 000 000 000 003 246 08;
  • 10) 0.000 000 000 000 000 000 000 003 246 08 × 2 = 0 + 0.000 000 000 000 000 000 000 006 492 16;
  • 11) 0.000 000 000 000 000 000 000 006 492 16 × 2 = 0 + 0.000 000 000 000 000 000 000 012 984 32;
  • 12) 0.000 000 000 000 000 000 000 012 984 32 × 2 = 0 + 0.000 000 000 000 000 000 000 025 968 64;
  • 13) 0.000 000 000 000 000 000 000 025 968 64 × 2 = 0 + 0.000 000 000 000 000 000 000 051 937 28;
  • 14) 0.000 000 000 000 000 000 000 051 937 28 × 2 = 0 + 0.000 000 000 000 000 000 000 103 874 56;
  • 15) 0.000 000 000 000 000 000 000 103 874 56 × 2 = 0 + 0.000 000 000 000 000 000 000 207 749 12;
  • 16) 0.000 000 000 000 000 000 000 207 749 12 × 2 = 0 + 0.000 000 000 000 000 000 000 415 498 24;
  • 17) 0.000 000 000 000 000 000 000 415 498 24 × 2 = 0 + 0.000 000 000 000 000 000 000 830 996 48;
  • 18) 0.000 000 000 000 000 000 000 830 996 48 × 2 = 0 + 0.000 000 000 000 000 000 001 661 992 96;
  • 19) 0.000 000 000 000 000 000 001 661 992 96 × 2 = 0 + 0.000 000 000 000 000 000 003 323 985 92;
  • 20) 0.000 000 000 000 000 000 003 323 985 92 × 2 = 0 + 0.000 000 000 000 000 000 006 647 971 84;
  • 21) 0.000 000 000 000 000 000 006 647 971 84 × 2 = 0 + 0.000 000 000 000 000 000 013 295 943 68;
  • 22) 0.000 000 000 000 000 000 013 295 943 68 × 2 = 0 + 0.000 000 000 000 000 000 026 591 887 36;
  • 23) 0.000 000 000 000 000 000 026 591 887 36 × 2 = 0 + 0.000 000 000 000 000 000 053 183 774 72;
  • 24) 0.000 000 000 000 000 000 053 183 774 72 × 2 = 0 + 0.000 000 000 000 000 000 106 367 549 44;
  • 25) 0.000 000 000 000 000 000 106 367 549 44 × 2 = 0 + 0.000 000 000 000 000 000 212 735 098 88;
  • 26) 0.000 000 000 000 000 000 212 735 098 88 × 2 = 0 + 0.000 000 000 000 000 000 425 470 197 76;
  • 27) 0.000 000 000 000 000 000 425 470 197 76 × 2 = 0 + 0.000 000 000 000 000 000 850 940 395 52;
  • 28) 0.000 000 000 000 000 000 850 940 395 52 × 2 = 0 + 0.000 000 000 000 000 001 701 880 791 04;
  • 29) 0.000 000 000 000 000 001 701 880 791 04 × 2 = 0 + 0.000 000 000 000 000 003 403 761 582 08;
  • 30) 0.000 000 000 000 000 003 403 761 582 08 × 2 = 0 + 0.000 000 000 000 000 006 807 523 164 16;
  • 31) 0.000 000 000 000 000 006 807 523 164 16 × 2 = 0 + 0.000 000 000 000 000 013 615 046 328 32;
  • 32) 0.000 000 000 000 000 013 615 046 328 32 × 2 = 0 + 0.000 000 000 000 000 027 230 092 656 64;
  • 33) 0.000 000 000 000 000 027 230 092 656 64 × 2 = 0 + 0.000 000 000 000 000 054 460 185 313 28;
  • 34) 0.000 000 000 000 000 054 460 185 313 28 × 2 = 0 + 0.000 000 000 000 000 108 920 370 626 56;
  • 35) 0.000 000 000 000 000 108 920 370 626 56 × 2 = 0 + 0.000 000 000 000 000 217 840 741 253 12;
  • 36) 0.000 000 000 000 000 217 840 741 253 12 × 2 = 0 + 0.000 000 000 000 000 435 681 482 506 24;
  • 37) 0.000 000 000 000 000 435 681 482 506 24 × 2 = 0 + 0.000 000 000 000 000 871 362 965 012 48;
  • 38) 0.000 000 000 000 000 871 362 965 012 48 × 2 = 0 + 0.000 000 000 000 001 742 725 930 024 96;
  • 39) 0.000 000 000 000 001 742 725 930 024 96 × 2 = 0 + 0.000 000 000 000 003 485 451 860 049 92;
  • 40) 0.000 000 000 000 003 485 451 860 049 92 × 2 = 0 + 0.000 000 000 000 006 970 903 720 099 84;
  • 41) 0.000 000 000 000 006 970 903 720 099 84 × 2 = 0 + 0.000 000 000 000 013 941 807 440 199 68;
  • 42) 0.000 000 000 000 013 941 807 440 199 68 × 2 = 0 + 0.000 000 000 000 027 883 614 880 399 36;
  • 43) 0.000 000 000 000 027 883 614 880 399 36 × 2 = 0 + 0.000 000 000 000 055 767 229 760 798 72;
  • 44) 0.000 000 000 000 055 767 229 760 798 72 × 2 = 0 + 0.000 000 000 000 111 534 459 521 597 44;
  • 45) 0.000 000 000 000 111 534 459 521 597 44 × 2 = 0 + 0.000 000 000 000 223 068 919 043 194 88;
  • 46) 0.000 000 000 000 223 068 919 043 194 88 × 2 = 0 + 0.000 000 000 000 446 137 838 086 389 76;
  • 47) 0.000 000 000 000 446 137 838 086 389 76 × 2 = 0 + 0.000 000 000 000 892 275 676 172 779 52;
  • 48) 0.000 000 000 000 892 275 676 172 779 52 × 2 = 0 + 0.000 000 000 001 784 551 352 345 559 04;
  • 49) 0.000 000 000 001 784 551 352 345 559 04 × 2 = 0 + 0.000 000 000 003 569 102 704 691 118 08;
  • 50) 0.000 000 000 003 569 102 704 691 118 08 × 2 = 0 + 0.000 000 000 007 138 205 409 382 236 16;
  • 51) 0.000 000 000 007 138 205 409 382 236 16 × 2 = 0 + 0.000 000 000 014 276 410 818 764 472 32;
  • 52) 0.000 000 000 014 276 410 818 764 472 32 × 2 = 0 + 0.000 000 000 028 552 821 637 528 944 64;
  • 53) 0.000 000 000 028 552 821 637 528 944 64 × 2 = 0 + 0.000 000 000 057 105 643 275 057 889 28;
  • 54) 0.000 000 000 057 105 643 275 057 889 28 × 2 = 0 + 0.000 000 000 114 211 286 550 115 778 56;
  • 55) 0.000 000 000 114 211 286 550 115 778 56 × 2 = 0 + 0.000 000 000 228 422 573 100 231 557 12;
  • 56) 0.000 000 000 228 422 573 100 231 557 12 × 2 = 0 + 0.000 000 000 456 845 146 200 463 114 24;
  • 57) 0.000 000 000 456 845 146 200 463 114 24 × 2 = 0 + 0.000 000 000 913 690 292 400 926 228 48;
  • 58) 0.000 000 000 913 690 292 400 926 228 48 × 2 = 0 + 0.000 000 001 827 380 584 801 852 456 96;
  • 59) 0.000 000 001 827 380 584 801 852 456 96 × 2 = 0 + 0.000 000 003 654 761 169 603 704 913 92;
  • 60) 0.000 000 003 654 761 169 603 704 913 92 × 2 = 0 + 0.000 000 007 309 522 339 207 409 827 84;
  • 61) 0.000 000 007 309 522 339 207 409 827 84 × 2 = 0 + 0.000 000 014 619 044 678 414 819 655 68;
  • 62) 0.000 000 014 619 044 678 414 819 655 68 × 2 = 0 + 0.000 000 029 238 089 356 829 639 311 36;
  • 63) 0.000 000 029 238 089 356 829 639 311 36 × 2 = 0 + 0.000 000 058 476 178 713 659 278 622 72;
  • 64) 0.000 000 058 476 178 713 659 278 622 72 × 2 = 0 + 0.000 000 116 952 357 427 318 557 245 44;
  • 65) 0.000 000 116 952 357 427 318 557 245 44 × 2 = 0 + 0.000 000 233 904 714 854 637 114 490 88;
  • 66) 0.000 000 233 904 714 854 637 114 490 88 × 2 = 0 + 0.000 000 467 809 429 709 274 228 981 76;
  • 67) 0.000 000 467 809 429 709 274 228 981 76 × 2 = 0 + 0.000 000 935 618 859 418 548 457 963 52;
  • 68) 0.000 000 935 618 859 418 548 457 963 52 × 2 = 0 + 0.000 001 871 237 718 837 096 915 927 04;
  • 69) 0.000 001 871 237 718 837 096 915 927 04 × 2 = 0 + 0.000 003 742 475 437 674 193 831 854 08;
  • 70) 0.000 003 742 475 437 674 193 831 854 08 × 2 = 0 + 0.000 007 484 950 875 348 387 663 708 16;
  • 71) 0.000 007 484 950 875 348 387 663 708 16 × 2 = 0 + 0.000 014 969 901 750 696 775 327 416 32;
  • 72) 0.000 014 969 901 750 696 775 327 416 32 × 2 = 0 + 0.000 029 939 803 501 393 550 654 832 64;
  • 73) 0.000 029 939 803 501 393 550 654 832 64 × 2 = 0 + 0.000 059 879 607 002 787 101 309 665 28;
  • 74) 0.000 059 879 607 002 787 101 309 665 28 × 2 = 0 + 0.000 119 759 214 005 574 202 619 330 56;
  • 75) 0.000 119 759 214 005 574 202 619 330 56 × 2 = 0 + 0.000 239 518 428 011 148 405 238 661 12;
  • 76) 0.000 239 518 428 011 148 405 238 661 12 × 2 = 0 + 0.000 479 036 856 022 296 810 477 322 24;
  • 77) 0.000 479 036 856 022 296 810 477 322 24 × 2 = 0 + 0.000 958 073 712 044 593 620 954 644 48;
  • 78) 0.000 958 073 712 044 593 620 954 644 48 × 2 = 0 + 0.001 916 147 424 089 187 241 909 288 96;
  • 79) 0.001 916 147 424 089 187 241 909 288 96 × 2 = 0 + 0.003 832 294 848 178 374 483 818 577 92;
  • 80) 0.003 832 294 848 178 374 483 818 577 92 × 2 = 0 + 0.007 664 589 696 356 748 967 637 155 84;
  • 81) 0.007 664 589 696 356 748 967 637 155 84 × 2 = 0 + 0.015 329 179 392 713 497 935 274 311 68;
  • 82) 0.015 329 179 392 713 497 935 274 311 68 × 2 = 0 + 0.030 658 358 785 426 995 870 548 623 36;
  • 83) 0.030 658 358 785 426 995 870 548 623 36 × 2 = 0 + 0.061 316 717 570 853 991 741 097 246 72;
  • 84) 0.061 316 717 570 853 991 741 097 246 72 × 2 = 0 + 0.122 633 435 141 707 983 482 194 493 44;
  • 85) 0.122 633 435 141 707 983 482 194 493 44 × 2 = 0 + 0.245 266 870 283 415 966 964 388 986 88;
  • 86) 0.245 266 870 283 415 966 964 388 986 88 × 2 = 0 + 0.490 533 740 566 831 933 928 777 973 76;
  • 87) 0.490 533 740 566 831 933 928 777 973 76 × 2 = 0 + 0.981 067 481 133 663 867 857 555 947 52;
  • 88) 0.981 067 481 133 663 867 857 555 947 52 × 2 = 1 + 0.962 134 962 267 327 735 715 111 895 04;
  • 89) 0.962 134 962 267 327 735 715 111 895 04 × 2 = 1 + 0.924 269 924 534 655 471 430 223 790 08;
  • 90) 0.924 269 924 534 655 471 430 223 790 08 × 2 = 1 + 0.848 539 849 069 310 942 860 447 580 16;
  • 91) 0.848 539 849 069 310 942 860 447 580 16 × 2 = 1 + 0.697 079 698 138 621 885 720 895 160 32;
  • 92) 0.697 079 698 138 621 885 720 895 160 32 × 2 = 1 + 0.394 159 396 277 243 771 441 790 320 64;
  • 93) 0.394 159 396 277 243 771 441 790 320 64 × 2 = 0 + 0.788 318 792 554 487 542 883 580 641 28;
  • 94) 0.788 318 792 554 487 542 883 580 641 28 × 2 = 1 + 0.576 637 585 108 975 085 767 161 282 56;
  • 95) 0.576 637 585 108 975 085 767 161 282 56 × 2 = 1 + 0.153 275 170 217 950 171 534 322 565 12;
  • 96) 0.153 275 170 217 950 171 534 322 565 12 × 2 = 0 + 0.306 550 340 435 900 343 068 645 130 24;
  • 97) 0.306 550 340 435 900 343 068 645 130 24 × 2 = 0 + 0.613 100 680 871 800 686 137 290 260 48;
  • 98) 0.613 100 680 871 800 686 137 290 260 48 × 2 = 1 + 0.226 201 361 743 601 372 274 580 520 96;
  • 99) 0.226 201 361 743 601 372 274 580 520 96 × 2 = 0 + 0.452 402 723 487 202 744 549 161 041 92;
  • 100) 0.452 402 723 487 202 744 549 161 041 92 × 2 = 0 + 0.904 805 446 974 405 489 098 322 083 84;
  • 101) 0.904 805 446 974 405 489 098 322 083 84 × 2 = 1 + 0.809 610 893 948 810 978 196 644 167 68;
  • 102) 0.809 610 893 948 810 978 196 644 167 68 × 2 = 1 + 0.619 221 787 897 621 956 393 288 335 36;
  • 103) 0.619 221 787 897 621 956 393 288 335 36 × 2 = 1 + 0.238 443 575 795 243 912 786 576 670 72;
  • 104) 0.238 443 575 795 243 912 786 576 670 72 × 2 = 0 + 0.476 887 151 590 487 825 573 153 341 44;
  • 105) 0.476 887 151 590 487 825 573 153 341 44 × 2 = 0 + 0.953 774 303 180 975 651 146 306 682 88;
  • 106) 0.953 774 303 180 975 651 146 306 682 88 × 2 = 1 + 0.907 548 606 361 951 302 292 613 365 76;
  • 107) 0.907 548 606 361 951 302 292 613 365 76 × 2 = 1 + 0.815 097 212 723 902 604 585 226 731 52;
  • 108) 0.815 097 212 723 902 604 585 226 731 52 × 2 = 1 + 0.630 194 425 447 805 209 170 453 463 04;
  • 109) 0.630 194 425 447 805 209 170 453 463 04 × 2 = 1 + 0.260 388 850 895 610 418 340 906 926 08;
  • 110) 0.260 388 850 895 610 418 340 906 926 08 × 2 = 0 + 0.520 777 701 791 220 836 681 813 852 16;
  • 111) 0.520 777 701 791 220 836 681 813 852 16 × 2 = 1 + 0.041 555 403 582 441 673 363 627 704 32;

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 34(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 1111 0110 0100 1110 0111 101(2)

5. Positive number before normalization:

0.000 000 000 000 000 000 000 000 006 34(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 1111 0110 0100 1110 0111 101(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 34(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 1111 0110 0100 1110 0111 101(2) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 1111 0110 0100 1110 0111 101(2) × 20 =


1.1111 0110 0100 1110 0111 101(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.1111 0110 0100 1110 0111 101


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 1011 0010 0111 0011 1101 =


111 1011 0010 0111 0011 1101


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 1011 0010 0111 0011 1101


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

0 - 0010 0111 - 111 1011 0010 0111 0011 1101


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