Convert -245 431 713 989 133 to a Signed Binary in Two's (2's) Complement Representation

How to convert decimal number -245 431 713 989 133(10) to a signed binary in two's (2's) complement representation

What are the steps to convert decimal number
-245 431 713 989 133 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. Start with the positive version of the number:

|-245 431 713 989 133| = 245 431 713 989 133

2. 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;
  • 245 431 713 989 133 ÷ 2 = 122 715 856 994 566 + 1;
  • 122 715 856 994 566 ÷ 2 = 61 357 928 497 283 + 0;
  • 61 357 928 497 283 ÷ 2 = 30 678 964 248 641 + 1;
  • 30 678 964 248 641 ÷ 2 = 15 339 482 124 320 + 1;
  • 15 339 482 124 320 ÷ 2 = 7 669 741 062 160 + 0;
  • 7 669 741 062 160 ÷ 2 = 3 834 870 531 080 + 0;
  • 3 834 870 531 080 ÷ 2 = 1 917 435 265 540 + 0;
  • 1 917 435 265 540 ÷ 2 = 958 717 632 770 + 0;
  • 958 717 632 770 ÷ 2 = 479 358 816 385 + 0;
  • 479 358 816 385 ÷ 2 = 239 679 408 192 + 1;
  • 239 679 408 192 ÷ 2 = 119 839 704 096 + 0;
  • 119 839 704 096 ÷ 2 = 59 919 852 048 + 0;
  • 59 919 852 048 ÷ 2 = 29 959 926 024 + 0;
  • 29 959 926 024 ÷ 2 = 14 979 963 012 + 0;
  • 14 979 963 012 ÷ 2 = 7 489 981 506 + 0;
  • 7 489 981 506 ÷ 2 = 3 744 990 753 + 0;
  • 3 744 990 753 ÷ 2 = 1 872 495 376 + 1;
  • 1 872 495 376 ÷ 2 = 936 247 688 + 0;
  • 936 247 688 ÷ 2 = 468 123 844 + 0;
  • 468 123 844 ÷ 2 = 234 061 922 + 0;
  • 234 061 922 ÷ 2 = 117 030 961 + 0;
  • 117 030 961 ÷ 2 = 58 515 480 + 1;
  • 58 515 480 ÷ 2 = 29 257 740 + 0;
  • 29 257 740 ÷ 2 = 14 628 870 + 0;
  • 14 628 870 ÷ 2 = 7 314 435 + 0;
  • 7 314 435 ÷ 2 = 3 657 217 + 1;
  • 3 657 217 ÷ 2 = 1 828 608 + 1;
  • 1 828 608 ÷ 2 = 914 304 + 0;
  • 914 304 ÷ 2 = 457 152 + 0;
  • 457 152 ÷ 2 = 228 576 + 0;
  • 228 576 ÷ 2 = 114 288 + 0;
  • 114 288 ÷ 2 = 57 144 + 0;
  • 57 144 ÷ 2 = 28 572 + 0;
  • 28 572 ÷ 2 = 14 286 + 0;
  • 14 286 ÷ 2 = 7 143 + 0;
  • 7 143 ÷ 2 = 3 571 + 1;
  • 3 571 ÷ 2 = 1 785 + 1;
  • 1 785 ÷ 2 = 892 + 1;
  • 892 ÷ 2 = 446 + 0;
  • 446 ÷ 2 = 223 + 0;
  • 223 ÷ 2 = 111 + 1;
  • 111 ÷ 2 = 55 + 1;
  • 55 ÷ 2 = 27 + 1;
  • 27 ÷ 2 = 13 + 1;
  • 13 ÷ 2 = 6 + 1;
  • 6 ÷ 2 = 3 + 0;
  • 3 ÷ 2 = 1 + 1;
  • 1 ÷ 2 = 0 + 1;

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

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

245 431 713 989 133(10) = 1101 1111 0011 1000 0000 0110 0010 0001 0000 0010 0000 1101(2)

4. Determine the signed binary number bit length:

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

  • 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, 48,

3) so that the first bit (leftmost) could be zero
(we deal with a positive number at this moment)


=== is: 64.


5. 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.


245 431 713 989 133(10) = 0000 0000 0000 0000 1101 1111 0011 1000 0000 0110 0010 0001 0000 0010 0000 1101

6. Get the negative integer number representation. Part 1:

  • To write the negative integer number on 64 bits (8 Bytes), as a signed binary in one's complement representation, replace all the bits on 0 with 1s and all the bits set on 1 with 0s.

Reverse the digits, flip the digits:

Replace the bits set on 0 with 1s and the bits set on 1 with 0s.

!(0000 0000 0000 0000 1101 1111 0011 1000 0000 0110 0010 0001 0000 0010 0000 1101)


= 1111 1111 1111 1111 0010 0000 1100 0111 1111 1001 1101 1110 1111 1101 1111 0010


7. Get the negative integer number representation. Part 2:

  • To write the negative integer number on 64 bits (8 Bytes), as a signed binary in two's complement representation, add 1 to the number calculated above 1111 1111 1111 1111 0010 0000 1100 0111 1111 1001 1101 1110 1111 1101 1111 0010 (to the signed binary in one's complement representation).

Binary addition carries on a value of 2:

  • 0 + 0 = 0
  • 0 + 1 = 1
  • 1 + 1 = 10
  • 1 + 10 = 11
  • 1 + 11 = 100

Add 1 to the number calculated above
(to the signed binary number in one's complement representation):

-245 431 713 989 133 =

1111 1111 1111 1111 0010 0000 1100 0111 1111 1001 1101 1110 1111 1101 1111 0010 + 1


Decimal Number -245 431 713 989 133(10) converted to signed binary in two's complement representation:

-245 431 713 989 133(10) = 1111 1111 1111 1111 0010 0000 1100 0111 1111 1001 1101 1110 1111 1101 1111 0011

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