Backbencher.dev

Binary Numbers

A number whose base is 2 is called a binary number. By base 2, it means we have only two digits to form all the numbers. They are 0 and 1.

If we follow binary number system in daily life, this is how we count 10 apples:

1
10
11
100
101
110
111
1000
1001
1010

Binary Number Literal

By default if we assign a number literal to a variable, it is considered as a decimal number(base10).

const a = 10;
console.log(a); // 10

In the above example, a contains decimal 10. It is not the binary equivalent of 2. In ES5, there is no way to represent a binary number. From ES6, to specify a binary number, we must prefix it with a leading zero followed by a lowercase or uppercase letter "B".

// ES6+

const a = 0b10;
console.log(a); // 2

const b = 0B10;
console.log(b); // 2

JavaScript engine treats a number as binary if it sees a 0b or 0B prefix.

If we use a number other than 0 and 1 after the prefix 0b or 0B, we get Syntax Error.

const a = 0b123; // SyntaxError: Invalid or unexpected token

Binary to Decimal Conversion

Here we have a binary number that contains 4 digits:

1010

In binary number system, each digits are in 1's place, 2's place, 4's place and 8's place.

  8  4  2  1
--------------
  1  0  1  0

In order to convert this binary number to decimal number, here is the formula:

8 x 1 + 4 x 0 + 2 x 1 + 1 x 0 =

8 + 0 + 2 + 0 =

10
Last updated on 5 Oct, 2022
Joby Joseph
Web Architect