- Explore [has_child]
- All Courses [subitem]
- AI Career Platform [subitem]
- Hire form us [subitem]
- 1:1 Coaching/Mentoring [subitem]
- Job Board [subitem]
- Institute Partnerships [subitem]
- Resources [has_child]
- Master Classes [subitem]
- Discussion Forum [subitem]
- Coding Playground [subitem]
- Free Courses [subitem]
- Topics [has_child]
- Data Science [subitem]
- Software Development [subitem]
- Company Insights
- Interview Preparation [subitem]
- Python [subitem]
- Programming [subitem]
- Digital Marketing [subitem]
- Web Development [subitem]
- Success Stories [subitem]
Data Structures: Foundation of Effective Programming
A Career in Digital Marketing - A Complete Guide for Beginners
Advanced Algorithms and Problem Solving Techniques
Fundamentals of LCM and HCF-2
Java Programs: Know the Best Java Programs for Beginners
Python Libraries
Introduction to Natural Language Processing (NLP)
React Functional Components: Introduction
Does a Linkedin profile really matter before getting a Job?
Secrets Of A Good Resume, Which Will Get You Hired!
What Is Content Marketing?
What is the Scope of Digital Marketing in 2025
What is Email Marketing in Digital Marketing?
What is Consulting? Essential Insights for Aspiring Consultants
How To Start Your Career In Data Science
Basic Guide to HTML & CSS – The Fundamentals of Web Development
The Multifaceted Relationships Between Banker and Customer
Getting Started with Tableau: Installation and Introduction
Step-by-Step Guide to Data Visualization with Power BI
Discover the Versatility of Microsoft Excel: Your Swiss Army Knife for Data
Data Science vs. Data Analytics - What's the Difference?
Why is it Important for Freshers to Work in a Team?
Basics of Javascript
Operating System: Functions
OOPs (Object Oriented Programming) in C++
What is Grooming & Etiquette?
Introduction To Cloud Computing
What are Node.js and Basics of Node.js?
Why Learn English?
Header in C++
How to Apply for Jobs as Fresher & Get Selected in One Go
Why Social Media Marketing Is Important?
C++ Language: An Overview
The skills required to stay relevant in IT sector
Ultimate Guide to HR Interview Questions for Freshers
Software: Types & Definition
Job Trends In This Decade
Understand Serialization and Deserialization in Java
6 Bootstrap Tools and Playground – One-stop shop for all Web Developmental Needs
JSON vs XML: Differences
Learn about Boolean in Python
A-Z about Python Variables
Introduction to Big Data Analytics: From Basics to Implementation
All about C Programming Language
A quick guide to Asymptotic Analysis
Fundamentals of Divisibility Rules in Quantitative Aptitude
Data Communication: A Process
What are Collections in Python?
Introduction to Deep Learning: From Basics to Advanced Concepts
Introduction to Management Interview Preparation
How To Start Competitive Programming - A Complete Guide
Structure of DBMS
Introduction to Goal Setting and Risk Profiling
10 Common Data Structures Every Programmer Must Know
Introduction To SQL: A Complete Guide
Fundamentals of Digital Marketing
Javascript vs Typescript: What is the Difference?
What is Search Engine Optimization & How It Works
What is Full Stack Development?
Fundas of Pandas
Software Testing: What it is?
What is a Job Interview?
What is Digital Marketing & How to Become a Digital Marketer
Most Common 10 Telephonic Interview Questions
Mastering Vocabulary: The Key to Verbal Ability
Types of Data in Statistics
The Role and Importance of Banks in the Economy
What is Meant by Machine Learning & What Can Machine Learning Do?
The Ultimate Guide to Resume building for Freshers
All About Resume and Its Importance
Encapsulation in Java: A Comprehensive Tutorial
Why Group Discussion for Interview? The HR Perspective
Why Data Visualization is Important for Becoming a Data Scientist
Introduction to Big Data
Master Simple and Compound Interest Quickly and Accurately
Understanding the Loan Underwriting Process
The Essential SUM Function in Excel: A Step-by-Step Guide
Creating and Using Sets in Tableau: A Comprehensive Guide
Mastering SWOT Analysis for Business Success
System Testing: Explained
Understanding the Difference in Simple and Compound Interest over 2 and 3 Years
Understanding Risk and Return in Mutual Funds
Mastering Data Filters in Tableau: A Step-by-Step Guide
Mastering the MIN Function in Excel: Find the Lowest Value Instantly
Mastering Value Chain Analysis: Uncovering Business Opportunities
Understanding Principle Multiplication with Compound and Simple Interest
Creating Calculated Fields in Tableau: A Step-by-Step Guide
Understanding PESTEL Analysis for Industry Evaluation
Understanding Credit Scoring Models: A Comprehensive Insight
Understanding Simple Interest vs. Compound Interest
Combining Data Sources Using Data Blending in Tableau
Mastering the GE-McKinsey 9-Box Matrix: A Strategic Guide
Mastering the COUNT Function in Excel
Mastering Mutual Fund Investment and Redemption Plans
Mastering Mixtures and Alligations: Key Techniques and Practice
Mastering the COUNTA Function in Excel
Maximizing Organizational Performance with the Balanced Scorecard
Bringing in More Data with Joins in Tableau
Understanding Credit Rating Agencies and Their Processes
Mastering Bar Charts in Tableau: A Step-by-Step Guide
Introduction
The left shift bitwise operator () takes two numbers and shifts the first operand's bits to the left by the amount indicated by the second operand. For instance, the expression (xy) can be used to left-shift the bits of x by y places. It is the same as dividing x by 2^y.
The following example illustrates how a left shift operator operates:
1000 << 2 returns 4000
(In Binary)
1000 -> 1111101000
<< 2 | left shift the bits
----- V by 2 places
4000 <- 111110100000
(In Binary)
Code
#include <iostream> z = x << 2; |
Output: z = 4000 |
Example: Count number of 1 Bits in a positive integer
Think of the number 1000. It can be expressed in bit-wise format as 1111101000. Not all bits, though, are written here. A 32-bit representation that is comprehensive is as follows:
00000000000000000000001111101000
When performing a bitwise AND with a 1 at any bit, the result is 1 if a bit is 1 or 0 if it is 0. The tally of 1 bits in the provided positive integer is obtained by performing such an operation on each bit and determining the number of 1s. The following example demonstrates how to use the left shift operator to achieve this goal:
#include <iostream> |
Output: CountOneBits(1000) = 6 CountOneBits(1023) = 10 |
As you can see, there is a zero in the final digit on the right and the digits have moved one position to the left. You should also be aware that moving left is the same as multiplying by two-digit powers of two. The equivalents of 6 * 2 and 6 * 8 are 6 * 1 and 6 * 3, respectively. When possible, a good optimizing compiler will switch out multiplications for shifts.
Things to Remember
- When dealing with negative numbers, you shouldn't use the left-shift or right-shift operators. If either of the inputs is a negative number, the behavior is undefinable. Answers of either 1 >> -1 and 1 -1, for instance, are undefined.
- The behavior is unknown if the number is moved by an amount greater than the size of an integer. For instance, if numbers are stored using 32 bits, 1 33 is undefined. Unsigned Long Long, which is defined using 64 bits and can hold huge quantities, 1ULL62 ULL, is used for bit shifts of larger values.
- The division of the first term and the second term raised to the power 2 and the left-shift by one are identical to the first term and the second term raised to the power 3 and the right-shift by one, respectively (1>>3 = 1/pow(2,3)).