24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 627 Converted to 64 Bit Double Precision IEEE 754 Binary Floating Point Representation Standard
Convert decimal 24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 627(10) to 64 bit double precision IEEE 754 binary floating point representation standard (1 bit for sign, 11 bits for exponent, 52 bits for mantissa)
What are the steps to convert decimal number
24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 627(10) to 64 bit double precision IEEE 754 binary floating point representation (1 bit for sign, 11 bits for exponent, 52 bits for mantissa)
1. First, convert to binary (in base 2) the integer part: 24.
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;
- 24 ÷ 2 = 12 + 0;
- 12 ÷ 2 = 6 + 0;
- 6 ÷ 2 = 3 + 0;
- 3 ÷ 2 = 1 + 1;
- 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.
24(10) =
1 1000(2)
3. Convert to binary (base 2) the fractional part: 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 627.
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.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 627 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 254;
- 2) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 254 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 508;
- 3) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 508 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 016;
- 4) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 016 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 442 032;
- 5) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 442 032 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 884 064;
- 6) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 884 064 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 768 128;
- 7) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 768 128 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 536 256;
- 8) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 536 256 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 072 512;
- 9) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 072 512 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 145 024;
- 10) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 145 024 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 290 048;
- 11) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 290 048 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 580 096;
- 12) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 580 096 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 160 192;
- 13) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 160 192 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 554 320 384;
- 14) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 554 320 384 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 108 640 768;
- 15) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 108 640 768 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 217 281 536;
- 16) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 217 281 536 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 434 563 072;
- 17) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 434 563 072 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 869 126 144;
- 18) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 869 126 144 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 738 252 288;
- 19) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 738 252 288 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 476 504 576;
- 20) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 476 504 576 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 953 009 152;
- 21) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 953 009 152 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 906 018 304;
- 22) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 906 018 304 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 443 812 036 608;
- 23) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 443 812 036 608 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 887 624 073 216;
- 24) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 887 624 073 216 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 775 248 146 432;
- 25) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 775 248 146 432 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 550 496 292 864;
- 26) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 550 496 292 864 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 100 992 585 728;
- 27) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 100 992 585 728 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 201 985 171 456;
- 28) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 201 985 171 456 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 403 970 342 912;
- 29) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 403 970 342 912 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 807 940 685 824;
- 30) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 807 940 685 824 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 615 881 371 648;
- 31) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 615 881 371 648 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 231 762 743 296;
- 32) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 231 762 743 296 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 463 525 486 592;
- 33) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 463 525 486 592 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 220 927 050 973 184;
- 34) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 220 927 050 973 184 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 441 854 101 946 368;
- 35) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 441 854 101 946 368 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 883 708 203 892 736;
- 36) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 883 708 203 892 736 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 767 416 407 785 472;
- 37) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 767 416 407 785 472 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 534 832 815 570 944;
- 38) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 534 832 815 570 944 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 069 665 631 141 888;
- 39) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 069 665 631 141 888 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 139 331 262 283 776;
- 40) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 139 331 262 283 776 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 278 662 524 567 552;
- 41) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 278 662 524 567 552 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 557 325 049 135 104;
- 42) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 557 325 049 135 104 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 114 650 098 270 208;
- 43) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 114 650 098 270 208 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 554 229 300 196 540 416;
- 44) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 554 229 300 196 540 416 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 108 458 600 393 080 832;
- 45) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 108 458 600 393 080 832 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 216 917 200 786 161 664;
- 46) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 216 917 200 786 161 664 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 433 834 401 572 323 328;
- 47) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 433 834 401 572 323 328 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 867 668 803 144 646 656;
- 48) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 867 668 803 144 646 656 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 735 337 606 289 293 312;
- 49) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 735 337 606 289 293 312 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 470 675 212 578 586 624;
- 50) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 470 675 212 578 586 624 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 941 350 425 157 173 248;
- 51) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 941 350 425 157 173 248 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 882 700 850 314 346 496;
- 52) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 882 700 850 314 346 496 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 443 765 401 700 628 692 992;
- 53) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 443 765 401 700 628 692 992 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 887 530 803 401 257 385 984;
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.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 627(10) =
0.1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2)
5. Positive number before normalization:
24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 627(10) =
1 1000.1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2)
6. Normalize the binary representation of the number.
Shift the decimal mark 4 positions to the left, so that only one non zero digit remains to the left of it:
24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 627(10) =
1 1000.1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2) =
1 1000.1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2) × 20 =
1.1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2) × 24
7. Up to this moment, there are the following elements that would feed into the 64 bit double precision IEEE 754 binary floating point representation:
Sign 0 (a positive number)
Exponent (unadjusted): 4
Mantissa (not normalized):
1.1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0
8. Adjust the exponent.
Use the 11 bit excess/bias notation:
Exponent (adjusted) =
Exponent (unadjusted) + 2(11-1) - 1 =
4 + 2(11-1) - 1 =
(4 + 1 023)(10) =
1 027(10)
9. Convert the adjusted exponent from the decimal (base 10) to 11 bit binary.
Use the same technique of repeatedly dividing by 2:
- division = quotient + remainder;
- 1 027 ÷ 2 = 513 + 1;
- 513 ÷ 2 = 256 + 1;
- 256 ÷ 2 = 128 + 0;
- 128 ÷ 2 = 64 + 0;
- 64 ÷ 2 = 32 + 0;
- 32 ÷ 2 = 16 + 0;
- 16 ÷ 2 = 8 + 0;
- 8 ÷ 2 = 4 + 0;
- 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) =
1027(10) =
100 0000 0011(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 52 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. 1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1 1000 =
1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001
12. The three elements that make up the number's 64 bit double precision IEEE 754 binary floating point representation:
Sign (1 bit) =
0 (a positive number)
Exponent (11 bits) =
100 0000 0011
Mantissa (52 bits) =
1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001
Decimal number 24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 627 converted to 64 bit double precision IEEE 754 binary floating point representation:
0 - 100 0000 0011 - 1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001