Bit Manipulation

Go to Problems

What is Binary Number System?

Before answering this question let us first recall what a decimal number system is. So a decimal number system is a type of number system where every digit of the number is from 0 to 9.  Here are a few examples of a decimal number: 1,10,123,1456 etc.

Similar to a Decimal number system we have something called a Binary number system in which each digit of the number can be either 0 or 1. Here are a few examples of a binary number : 1010, 1000, 1111,1 etc.

Base of a Number System: 

We define the base of a number as the total number digits used in the system. 

For example: For a decimal number system we can use digits from 0 to 9 , therefore the total number of digits  is 10, and hence the base is 10.

Similarly for a Binary number system we can use 0 or 1 , therefore the total number of digits  is 2, and hence the base is 2.

But why are Binary Numbers so Important? Why does a computer only understand binary?

This is because a computer is an electrical device and all that an electrical device understands is electrical signals, so if we have to give an input to the computer there would only be two states possible, either there is current or there is no current.

 

Writing numbers in Binary number system and converting Binary numbers to Decimal.

First let’s recall how we used to write numbers in decimal representation.

Eg: Representing 1234 in the decimal number system.

Place Thousands place 1000 Hundreds place 100 Tens Place 10 Units place 1
Digits 1 2 3 4

1 x 1000 + 2 x 100 + 3 x 10 + 4 x  1 = 1234 

We would follow the same procedure for a binary number. The only difference is that instead of powers of 10 we would have powers of 2 and the digits can only be 0 or 1.

Eg: Let’s suppose we are given a binary number ‘11101’ and want to convert it into decimal.

Place 16 8 4 2 1
Digits 1 1 1 0 1

Therefore the number in binary is = 1 x 16 + 1 x 8 + 1 x  4 + 2 x 0 + 1 x 1
                                                      = 29

Therefore (11101)2 = 2910

Serious about Learning Programming ?

Learn this and a lot more with Scaler Academy's industry vetted curriculum which covers Data Structures & Algorithms in depth.

Bit Manipulation Problems

Bit play
Bit tricks
Bit array
Problem Score Companies Time Status
Single Number 275 11:53
Single Number II 275 39:22
lock
Topic Bonus
Bonus will be unlocked after solving min. 1 problem from each bucket