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;
- 255 255 255 173 ÷ 2 = 127 627 627 586 + 1;
- 127 627 627 586 ÷ 2 = 63 813 813 793 + 0;
- 63 813 813 793 ÷ 2 = 31 906 906 896 + 1;
- 31 906 906 896 ÷ 2 = 15 953 453 448 + 0;
- 15 953 453 448 ÷ 2 = 7 976 726 724 + 0;
- 7 976 726 724 ÷ 2 = 3 988 363 362 + 0;
- 3 988 363 362 ÷ 2 = 1 994 181 681 + 0;
- 1 994 181 681 ÷ 2 = 997 090 840 + 1;
- 997 090 840 ÷ 2 = 498 545 420 + 0;
- 498 545 420 ÷ 2 = 249 272 710 + 0;
- 249 272 710 ÷ 2 = 124 636 355 + 0;
- 124 636 355 ÷ 2 = 62 318 177 + 1;
- 62 318 177 ÷ 2 = 31 159 088 + 1;
- 31 159 088 ÷ 2 = 15 579 544 + 0;
- 15 579 544 ÷ 2 = 7 789 772 + 0;
- 7 789 772 ÷ 2 = 3 894 886 + 0;
- 3 894 886 ÷ 2 = 1 947 443 + 0;
- 1 947 443 ÷ 2 = 973 721 + 1;
- 973 721 ÷ 2 = 486 860 + 1;
- 486 860 ÷ 2 = 243 430 + 0;
- 243 430 ÷ 2 = 121 715 + 0;
- 121 715 ÷ 2 = 60 857 + 1;
- 60 857 ÷ 2 = 30 428 + 1;
- 30 428 ÷ 2 = 15 214 + 0;
- 15 214 ÷ 2 = 7 607 + 0;
- 7 607 ÷ 2 = 3 803 + 1;
- 3 803 ÷ 2 = 1 901 + 1;
- 1 901 ÷ 2 = 950 + 1;
- 950 ÷ 2 = 475 + 0;
- 475 ÷ 2 = 237 + 1;
- 237 ÷ 2 = 118 + 1;
- 118 ÷ 2 = 59 + 0;
- 59 ÷ 2 = 29 + 1;
- 29 ÷ 2 = 14 + 1;
- 14 ÷ 2 = 7 + 0;
- 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.
255 255 255 173(10) = 11 1011 0110 1110 0110 0110 0001 1000 1000 0101(2)
3. Determine the signed binary number bit length:
The base 2 number's actual length, in bits: 38.
A signed binary's bit length must be equal to a power of 2, as of:
21 = 2; 22 = 4; 23 = 8; 24 = 16; 25 = 32; 26 = 64; ...
The first bit (the leftmost) is reserved for the sign:
0 = positive integer number, 1 = negative integer number
The least number that is:
1) a power of 2
2) and is larger than the actual length, 38,
3) so that the first bit (leftmost) could be zero
(we deal with a positive number at this moment)
=== is: 64.
4. Get the positive binary computer representation on 64 bits (8 Bytes):
If needed, add extra 0s in front (to the left) of the base 2 number, up to the required length, 64:
Number 255 255 255 173(10), a signed integer number (with sign),
converted from decimal system (from base 10)
and written as a signed binary (in base 2):
255 255 255 173(10) = 0000 0000 0000 0000 0000 0000 0011 1011 0110 1110 0110 0110 0001 1000 1000 0101
Spaces were used to group digits: for binary, by 4, for decimal, by 3.