Converter from binary two's complement: converting to decimal system (base ten) integer numbers

Convert numbers from binary two's complement to decimal system (base ten) integers

Entered binary number length must be: 2, 4, 8, 16, 32, or 64 - or else extra bits of '0' value will be added in front (to the left).

Latest binary numbers in two's complement representation converted to signed integers in decimal system (base ten)


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

To understand how to convert a binary number in two's complement representation from binary system to decimal (base ten), the easiest way is to do it through an example - convert binary, 1101 1110, to base ten:

  • In a binary two's complement, first bit (leftmost) indicates the sign, 1 = negative, 0 = positive. The first bit is 1, so the number is negative.
  • Get the binary representation in one's complement, subtract 1 from the binary initial number:
    1101 1110 - 1 = 1101 1101
  • Get the binary representation of the positive number, flip all the bits in the binary one's complement representation - replace the bits set on 1 with 0-s and the bits set on 0 with 1-s:
    !(1101 1101) = 0010 0010
  • Write bellow the positive binary number representation in base two, and above each bit that makes up the binary number write the corresponding powers of 2 (numeral base), starting with zero, from the right of the number (rightmost bit), walking to the left of the number, increasing each corresonding power of 2 with exactly one unit:
  • powers of 2 7 6 5 4 3 2 1 0
    number's digits 0 0 1 0 0 0 1 0
  • Build the representation of the positive number in base 10, by taking each digit of the binary number, multiplying it by the corresponding power of 2 and then summing up all the terms:
    0010 0010(2) =
    = 0 * 27 + 0 * 26 + 1 * 25 + 0 * 24 + 0 * 23 + 0 * 22 + 1 * 21 + 0 * 20 =
    = 0 + 0 + 32 + 0 + 0 + 0 + 2 + 0 =
    = 32 + 2 =
    = 34(10)
  • Binary two's complement number, 1101 1110 = -34(10), signed negative integer in base 10