Convert 9 007 199 254 741 271 to a Signed Binary in Two's (2's) Complement Representation

How to convert decimal number 9 007 199 254 741 271(10) to a signed binary in two's (2's) complement representation

What are the steps to convert decimal number
9 007 199 254 741 271 to a signed binary in two's (2's) complement representation?

  • A signed integer, written in base ten, or a decimal system number, is a number written using the digits 0 through 9 and the sign, which can be positive (+) or negative (-). If positive, the sign is usually not written. A number written in base two, or binary, is a number written using only the digits 0 and 1.

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;
  • 9 007 199 254 741 271 ÷ 2 = 4 503 599 627 370 635 + 1;
  • 4 503 599 627 370 635 ÷ 2 = 2 251 799 813 685 317 + 1;
  • 2 251 799 813 685 317 ÷ 2 = 1 125 899 906 842 658 + 1;
  • 1 125 899 906 842 658 ÷ 2 = 562 949 953 421 329 + 0;
  • 562 949 953 421 329 ÷ 2 = 281 474 976 710 664 + 1;
  • 281 474 976 710 664 ÷ 2 = 140 737 488 355 332 + 0;
  • 140 737 488 355 332 ÷ 2 = 70 368 744 177 666 + 0;
  • 70 368 744 177 666 ÷ 2 = 35 184 372 088 833 + 0;
  • 35 184 372 088 833 ÷ 2 = 17 592 186 044 416 + 1;
  • 17 592 186 044 416 ÷ 2 = 8 796 093 022 208 + 0;
  • 8 796 093 022 208 ÷ 2 = 4 398 046 511 104 + 0;
  • 4 398 046 511 104 ÷ 2 = 2 199 023 255 552 + 0;
  • 2 199 023 255 552 ÷ 2 = 1 099 511 627 776 + 0;
  • 1 099 511 627 776 ÷ 2 = 549 755 813 888 + 0;
  • 549 755 813 888 ÷ 2 = 274 877 906 944 + 0;
  • 274 877 906 944 ÷ 2 = 137 438 953 472 + 0;
  • 137 438 953 472 ÷ 2 = 68 719 476 736 + 0;
  • 68 719 476 736 ÷ 2 = 34 359 738 368 + 0;
  • 34 359 738 368 ÷ 2 = 17 179 869 184 + 0;
  • 17 179 869 184 ÷ 2 = 8 589 934 592 + 0;
  • 8 589 934 592 ÷ 2 = 4 294 967 296 + 0;
  • 4 294 967 296 ÷ 2 = 2 147 483 648 + 0;
  • 2 147 483 648 ÷ 2 = 1 073 741 824 + 0;
  • 1 073 741 824 ÷ 2 = 536 870 912 + 0;
  • 536 870 912 ÷ 2 = 268 435 456 + 0;
  • 268 435 456 ÷ 2 = 134 217 728 + 0;
  • 134 217 728 ÷ 2 = 67 108 864 + 0;
  • 67 108 864 ÷ 2 = 33 554 432 + 0;
  • 33 554 432 ÷ 2 = 16 777 216 + 0;
  • 16 777 216 ÷ 2 = 8 388 608 + 0;
  • 8 388 608 ÷ 2 = 4 194 304 + 0;
  • 4 194 304 ÷ 2 = 2 097 152 + 0;
  • 2 097 152 ÷ 2 = 1 048 576 + 0;
  • 1 048 576 ÷ 2 = 524 288 + 0;
  • 524 288 ÷ 2 = 262 144 + 0;
  • 262 144 ÷ 2 = 131 072 + 0;
  • 131 072 ÷ 2 = 65 536 + 0;
  • 65 536 ÷ 2 = 32 768 + 0;
  • 32 768 ÷ 2 = 16 384 + 0;
  • 16 384 ÷ 2 = 8 192 + 0;
  • 8 192 ÷ 2 = 4 096 + 0;
  • 4 096 ÷ 2 = 2 048 + 0;
  • 2 048 ÷ 2 = 1 024 + 0;
  • 1 024 ÷ 2 = 512 + 0;
  • 512 ÷ 2 = 256 + 0;
  • 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;

2. Construct the base 2 representation of the positive number:

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

9 007 199 254 741 271(10) = 10 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 0001 0111(2)

3. Determine the signed binary number bit length:

  • The base 2 number's actual length, in bits: 54.

  • 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) indicates 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, 54,

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.


Decimal Number 9 007 199 254 741 271(10) converted to signed binary in two's complement representation:

9 007 199 254 741 271(10) = 0000 0000 0010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 0001 0111

Spaces were used to group digits: for binary, by 4, for decimal, by 3.


How to convert signed integers from decimal system to signed binary in two's complement representation

Follow the steps below to convert a signed base 10 integer number to signed binary in two's complement representation:

  • 1. If the number to be converted is negative, start with the positive version of the number.
  • 2. Divide repeatedly by 2 the positive representation of the integer number, keeping track of each remainder, until we get a quotient that is zero.
  • 3. Construct the base 2 representation of the positive number, by taking all the remainders 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. Binary numbers represented in computer language must have 4, 8, 16, 32, 64, ... bit length (a power of 2) - if needed, add extra bits on 0 in front (to the left) of the base 2 number above, up to the required length, so that the first bit (the leftmost) will be 0, correctly representing a positive number.
  • 5. To get the negative integer number representation in signed binary one's complement, replace all 0 bits with 1s and all 1 bits with 0s (reversing the digits).
  • 6. To get the negative integer number, in signed binary two's complement representation, add 1 to the number above.

Example: convert the negative number -60 from the decimal system (base ten) to signed binary in two's complement:

  • 1. Start with the positive version of the number: |-60| = 60
  • 2. Divide repeatedly 60 by 2, keeping track of each remainder:
    • division = quotient + remainder
    • 60 ÷ 2 = 30 + 0
    • 30 ÷ 2 = 15 + 0
    • 15 ÷ 2 = 7 + 1
    • 7 ÷ 2 = 3 + 1
    • 3 ÷ 2 = 1 + 1
    • 1 ÷ 2 = 0 + 1
  • 3. Construct the base 2 representation of the positive number, by taking all the remainders starting from the bottom of the list constructed above:
    60(10) = 11 1100(2)
  • 4. Bit length of base 2 representation number is 6, so the positive binary computer representation of a signed binary will take in this particular case 8 bits (the least power of 2 larger than 6) - add extra 0 digits in front of the base 2 number, up to the required length:
    60(10) = 0011 1100(2)
  • 5. To get the negative integer number representation in signed binary one's complement, replace all the 0 bits with 1s and all 1 bits with 0s (reversing the digits):
    !(0011 1100) = 1100 0011
  • 6. To get the negative integer number, signed binary in two's complement representation, add 1 to the number above:
    -60(10) = 1100 0011 + 1 = 1100 0100
  • Number -60(10), signed integer, converted from decimal system (base 10) to signed binary two's complement representation = 1100 0100