385 698 798 698 697 658 765 876 587 659 385.999 999 999 999 999 999 962 6 Converted to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard

Convert decimal 385 698 798 698 697 658 765 876 587 659 385.999 999 999 999 999 999 962 6(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
385 698 798 698 697 658 765 876 587 659 385.999 999 999 999 999 999 962 6(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: 385 698 798 698 697 658 765 876 587 659 385.
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;
  • 385 698 798 698 697 658 765 876 587 659 385 ÷ 2 = 192 849 399 349 348 829 382 938 293 829 692 + 1;
  • 192 849 399 349 348 829 382 938 293 829 692 ÷ 2 = 96 424 699 674 674 414 691 469 146 914 846 + 0;
  • 96 424 699 674 674 414 691 469 146 914 846 ÷ 2 = 48 212 349 837 337 207 345 734 573 457 423 + 0;
  • 48 212 349 837 337 207 345 734 573 457 423 ÷ 2 = 24 106 174 918 668 603 672 867 286 728 711 + 1;
  • 24 106 174 918 668 603 672 867 286 728 711 ÷ 2 = 12 053 087 459 334 301 836 433 643 364 355 + 1;
  • 12 053 087 459 334 301 836 433 643 364 355 ÷ 2 = 6 026 543 729 667 150 918 216 821 682 177 + 1;
  • 6 026 543 729 667 150 918 216 821 682 177 ÷ 2 = 3 013 271 864 833 575 459 108 410 841 088 + 1;
  • 3 013 271 864 833 575 459 108 410 841 088 ÷ 2 = 1 506 635 932 416 787 729 554 205 420 544 + 0;
  • 1 506 635 932 416 787 729 554 205 420 544 ÷ 2 = 753 317 966 208 393 864 777 102 710 272 + 0;
  • 753 317 966 208 393 864 777 102 710 272 ÷ 2 = 376 658 983 104 196 932 388 551 355 136 + 0;
  • 376 658 983 104 196 932 388 551 355 136 ÷ 2 = 188 329 491 552 098 466 194 275 677 568 + 0;
  • 188 329 491 552 098 466 194 275 677 568 ÷ 2 = 94 164 745 776 049 233 097 137 838 784 + 0;
  • 94 164 745 776 049 233 097 137 838 784 ÷ 2 = 47 082 372 888 024 616 548 568 919 392 + 0;
  • 47 082 372 888 024 616 548 568 919 392 ÷ 2 = 23 541 186 444 012 308 274 284 459 696 + 0;
  • 23 541 186 444 012 308 274 284 459 696 ÷ 2 = 11 770 593 222 006 154 137 142 229 848 + 0;
  • 11 770 593 222 006 154 137 142 229 848 ÷ 2 = 5 885 296 611 003 077 068 571 114 924 + 0;
  • 5 885 296 611 003 077 068 571 114 924 ÷ 2 = 2 942 648 305 501 538 534 285 557 462 + 0;
  • 2 942 648 305 501 538 534 285 557 462 ÷ 2 = 1 471 324 152 750 769 267 142 778 731 + 0;
  • 1 471 324 152 750 769 267 142 778 731 ÷ 2 = 735 662 076 375 384 633 571 389 365 + 1;
  • 735 662 076 375 384 633 571 389 365 ÷ 2 = 367 831 038 187 692 316 785 694 682 + 1;
  • 367 831 038 187 692 316 785 694 682 ÷ 2 = 183 915 519 093 846 158 392 847 341 + 0;
  • 183 915 519 093 846 158 392 847 341 ÷ 2 = 91 957 759 546 923 079 196 423 670 + 1;
  • 91 957 759 546 923 079 196 423 670 ÷ 2 = 45 978 879 773 461 539 598 211 835 + 0;
  • 45 978 879 773 461 539 598 211 835 ÷ 2 = 22 989 439 886 730 769 799 105 917 + 1;
  • 22 989 439 886 730 769 799 105 917 ÷ 2 = 11 494 719 943 365 384 899 552 958 + 1;
  • 11 494 719 943 365 384 899 552 958 ÷ 2 = 5 747 359 971 682 692 449 776 479 + 0;
  • 5 747 359 971 682 692 449 776 479 ÷ 2 = 2 873 679 985 841 346 224 888 239 + 1;
  • 2 873 679 985 841 346 224 888 239 ÷ 2 = 1 436 839 992 920 673 112 444 119 + 1;
  • 1 436 839 992 920 673 112 444 119 ÷ 2 = 718 419 996 460 336 556 222 059 + 1;
  • 718 419 996 460 336 556 222 059 ÷ 2 = 359 209 998 230 168 278 111 029 + 1;
  • 359 209 998 230 168 278 111 029 ÷ 2 = 179 604 999 115 084 139 055 514 + 1;
  • 179 604 999 115 084 139 055 514 ÷ 2 = 89 802 499 557 542 069 527 757 + 0;
  • 89 802 499 557 542 069 527 757 ÷ 2 = 44 901 249 778 771 034 763 878 + 1;
  • 44 901 249 778 771 034 763 878 ÷ 2 = 22 450 624 889 385 517 381 939 + 0;
  • 22 450 624 889 385 517 381 939 ÷ 2 = 11 225 312 444 692 758 690 969 + 1;
  • 11 225 312 444 692 758 690 969 ÷ 2 = 5 612 656 222 346 379 345 484 + 1;
  • 5 612 656 222 346 379 345 484 ÷ 2 = 2 806 328 111 173 189 672 742 + 0;
  • 2 806 328 111 173 189 672 742 ÷ 2 = 1 403 164 055 586 594 836 371 + 0;
  • 1 403 164 055 586 594 836 371 ÷ 2 = 701 582 027 793 297 418 185 + 1;
  • 701 582 027 793 297 418 185 ÷ 2 = 350 791 013 896 648 709 092 + 1;
  • 350 791 013 896 648 709 092 ÷ 2 = 175 395 506 948 324 354 546 + 0;
  • 175 395 506 948 324 354 546 ÷ 2 = 87 697 753 474 162 177 273 + 0;
  • 87 697 753 474 162 177 273 ÷ 2 = 43 848 876 737 081 088 636 + 1;
  • 43 848 876 737 081 088 636 ÷ 2 = 21 924 438 368 540 544 318 + 0;
  • 21 924 438 368 540 544 318 ÷ 2 = 10 962 219 184 270 272 159 + 0;
  • 10 962 219 184 270 272 159 ÷ 2 = 5 481 109 592 135 136 079 + 1;
  • 5 481 109 592 135 136 079 ÷ 2 = 2 740 554 796 067 568 039 + 1;
  • 2 740 554 796 067 568 039 ÷ 2 = 1 370 277 398 033 784 019 + 1;
  • 1 370 277 398 033 784 019 ÷ 2 = 685 138 699 016 892 009 + 1;
  • 685 138 699 016 892 009 ÷ 2 = 342 569 349 508 446 004 + 1;
  • 342 569 349 508 446 004 ÷ 2 = 171 284 674 754 223 002 + 0;
  • 171 284 674 754 223 002 ÷ 2 = 85 642 337 377 111 501 + 0;
  • 85 642 337 377 111 501 ÷ 2 = 42 821 168 688 555 750 + 1;
  • 42 821 168 688 555 750 ÷ 2 = 21 410 584 344 277 875 + 0;
  • 21 410 584 344 277 875 ÷ 2 = 10 705 292 172 138 937 + 1;
  • 10 705 292 172 138 937 ÷ 2 = 5 352 646 086 069 468 + 1;
  • 5 352 646 086 069 468 ÷ 2 = 2 676 323 043 034 734 + 0;
  • 2 676 323 043 034 734 ÷ 2 = 1 338 161 521 517 367 + 0;
  • 1 338 161 521 517 367 ÷ 2 = 669 080 760 758 683 + 1;
  • 669 080 760 758 683 ÷ 2 = 334 540 380 379 341 + 1;
  • 334 540 380 379 341 ÷ 2 = 167 270 190 189 670 + 1;
  • 167 270 190 189 670 ÷ 2 = 83 635 095 094 835 + 0;
  • 83 635 095 094 835 ÷ 2 = 41 817 547 547 417 + 1;
  • 41 817 547 547 417 ÷ 2 = 20 908 773 773 708 + 1;
  • 20 908 773 773 708 ÷ 2 = 10 454 386 886 854 + 0;
  • 10 454 386 886 854 ÷ 2 = 5 227 193 443 427 + 0;
  • 5 227 193 443 427 ÷ 2 = 2 613 596 721 713 + 1;
  • 2 613 596 721 713 ÷ 2 = 1 306 798 360 856 + 1;
  • 1 306 798 360 856 ÷ 2 = 653 399 180 428 + 0;
  • 653 399 180 428 ÷ 2 = 326 699 590 214 + 0;
  • 326 699 590 214 ÷ 2 = 163 349 795 107 + 0;
  • 163 349 795 107 ÷ 2 = 81 674 897 553 + 1;
  • 81 674 897 553 ÷ 2 = 40 837 448 776 + 1;
  • 40 837 448 776 ÷ 2 = 20 418 724 388 + 0;
  • 20 418 724 388 ÷ 2 = 10 209 362 194 + 0;
  • 10 209 362 194 ÷ 2 = 5 104 681 097 + 0;
  • 5 104 681 097 ÷ 2 = 2 552 340 548 + 1;
  • 2 552 340 548 ÷ 2 = 1 276 170 274 + 0;
  • 1 276 170 274 ÷ 2 = 638 085 137 + 0;
  • 638 085 137 ÷ 2 = 319 042 568 + 1;
  • 319 042 568 ÷ 2 = 159 521 284 + 0;
  • 159 521 284 ÷ 2 = 79 760 642 + 0;
  • 79 760 642 ÷ 2 = 39 880 321 + 0;
  • 39 880 321 ÷ 2 = 19 940 160 + 1;
  • 19 940 160 ÷ 2 = 9 970 080 + 0;
  • 9 970 080 ÷ 2 = 4 985 040 + 0;
  • 4 985 040 ÷ 2 = 2 492 520 + 0;
  • 2 492 520 ÷ 2 = 1 246 260 + 0;
  • 1 246 260 ÷ 2 = 623 130 + 0;
  • 623 130 ÷ 2 = 311 565 + 0;
  • 311 565 ÷ 2 = 155 782 + 1;
  • 155 782 ÷ 2 = 77 891 + 0;
  • 77 891 ÷ 2 = 38 945 + 1;
  • 38 945 ÷ 2 = 19 472 + 1;
  • 19 472 ÷ 2 = 9 736 + 0;
  • 9 736 ÷ 2 = 4 868 + 0;
  • 4 868 ÷ 2 = 2 434 + 0;
  • 2 434 ÷ 2 = 1 217 + 0;
  • 1 217 ÷ 2 = 608 + 1;
  • 608 ÷ 2 = 304 + 0;
  • 304 ÷ 2 = 152 + 0;
  • 152 ÷ 2 = 76 + 0;
  • 76 ÷ 2 = 38 + 0;
  • 38 ÷ 2 = 19 + 0;
  • 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 integer part of the number.

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

385 698 798 698 697 658 765 876 587 659 385(10) =


1 0011 0000 0100 0011 0100 0000 1000 1001 0001 1000 1100 1101 1100 1101 0011 1110 0100 1100 1101 0111 1101 1010 1100 0000 0000 0111 1001(2)


3. Convert to binary (base 2) the fractional part: 0.999 999 999 999 999 999 962 6.

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.999 999 999 999 999 999 962 6 × 2 = 1 + 0.999 999 999 999 999 999 925 2;
  • 2) 0.999 999 999 999 999 999 925 2 × 2 = 1 + 0.999 999 999 999 999 999 850 4;
  • 3) 0.999 999 999 999 999 999 850 4 × 2 = 1 + 0.999 999 999 999 999 999 700 8;
  • 4) 0.999 999 999 999 999 999 700 8 × 2 = 1 + 0.999 999 999 999 999 999 401 6;
  • 5) 0.999 999 999 999 999 999 401 6 × 2 = 1 + 0.999 999 999 999 999 998 803 2;
  • 6) 0.999 999 999 999 999 998 803 2 × 2 = 1 + 0.999 999 999 999 999 997 606 4;
  • 7) 0.999 999 999 999 999 997 606 4 × 2 = 1 + 0.999 999 999 999 999 995 212 8;
  • 8) 0.999 999 999 999 999 995 212 8 × 2 = 1 + 0.999 999 999 999 999 990 425 6;
  • 9) 0.999 999 999 999 999 990 425 6 × 2 = 1 + 0.999 999 999 999 999 980 851 2;
  • 10) 0.999 999 999 999 999 980 851 2 × 2 = 1 + 0.999 999 999 999 999 961 702 4;
  • 11) 0.999 999 999 999 999 961 702 4 × 2 = 1 + 0.999 999 999 999 999 923 404 8;
  • 12) 0.999 999 999 999 999 923 404 8 × 2 = 1 + 0.999 999 999 999 999 846 809 6;
  • 13) 0.999 999 999 999 999 846 809 6 × 2 = 1 + 0.999 999 999 999 999 693 619 2;
  • 14) 0.999 999 999 999 999 693 619 2 × 2 = 1 + 0.999 999 999 999 999 387 238 4;
  • 15) 0.999 999 999 999 999 387 238 4 × 2 = 1 + 0.999 999 999 999 998 774 476 8;
  • 16) 0.999 999 999 999 998 774 476 8 × 2 = 1 + 0.999 999 999 999 997 548 953 6;
  • 17) 0.999 999 999 999 997 548 953 6 × 2 = 1 + 0.999 999 999 999 995 097 907 2;
  • 18) 0.999 999 999 999 995 097 907 2 × 2 = 1 + 0.999 999 999 999 990 195 814 4;
  • 19) 0.999 999 999 999 990 195 814 4 × 2 = 1 + 0.999 999 999 999 980 391 628 8;
  • 20) 0.999 999 999 999 980 391 628 8 × 2 = 1 + 0.999 999 999 999 960 783 257 6;
  • 21) 0.999 999 999 999 960 783 257 6 × 2 = 1 + 0.999 999 999 999 921 566 515 2;
  • 22) 0.999 999 999 999 921 566 515 2 × 2 = 1 + 0.999 999 999 999 843 133 030 4;
  • 23) 0.999 999 999 999 843 133 030 4 × 2 = 1 + 0.999 999 999 999 686 266 060 8;
  • 24) 0.999 999 999 999 686 266 060 8 × 2 = 1 + 0.999 999 999 999 372 532 121 6;

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.999 999 999 999 999 999 962 6(10) =


0.1111 1111 1111 1111 1111 1111(2)

5. Positive number before normalization:

385 698 798 698 697 658 765 876 587 659 385.999 999 999 999 999 999 962 6(10) =


1 0011 0000 0100 0011 0100 0000 1000 1001 0001 1000 1100 1101 1100 1101 0011 1110 0100 1100 1101 0111 1101 1010 1100 0000 0000 0111 1001.1111 1111 1111 1111 1111 1111(2)

6. Normalize the binary representation of the number.

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


385 698 798 698 697 658 765 876 587 659 385.999 999 999 999 999 999 962 6(10) =


1 0011 0000 0100 0011 0100 0000 1000 1001 0001 1000 1100 1101 1100 1101 0011 1110 0100 1100 1101 0111 1101 1010 1100 0000 0000 0111 1001.1111 1111 1111 1111 1111 1111(2) =


1 0011 0000 0100 0011 0100 0000 1000 1001 0001 1000 1100 1101 1100 1101 0011 1110 0100 1100 1101 0111 1101 1010 1100 0000 0000 0111 1001.1111 1111 1111 1111 1111 1111(2) × 20 =


1.0011 0000 0100 0011 0100 0000 1000 1001 0001 1000 1100 1101 1100 1101 0011 1110 0100 1100 1101 0111 1101 1010 1100 0000 0000 0111 1001 1111 1111 1111 1111 1111 1111(2) × 2108


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


Mantissa (not normalized):
1.0011 0000 0100 0011 0100 0000 1000 1001 0001 1000 1100 1101 1100 1101 0011 1110 0100 1100 1101 0111 1101 1010 1100 0000 0000 0111 1001 1111 1111 1111 1111 1111 1111


8. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


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


108 + 2(8-1) - 1 =


(108 + 127)(10) =


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


235(10) =


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


001 1000 0010 0001 1010 0000


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


Mantissa (23 bits) =
001 1000 0010 0001 1010 0000


Decimal number 385 698 798 698 697 658 765 876 587 659 385.999 999 999 999 999 999 962 6 converted to 32 bit single precision IEEE 754 binary floating point representation:

0 - 1110 1011 - 001 1000 0010 0001 1010 0000


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