# Negative Binary Numbers & 2’s Complement | Easy explanation

Negative Binary Numbers | Negative binary to decimal | Negative binary numbers to decimal | 2’s complement | 2s complement calculator | 2s complement | 2’s complement of binary number | Negative number in binary | Negative Binary Numbers Representation

✔️Certainly! In the binary number system, negative numbers are represented using a system called “Two’s complement.” The two’s complement method is commonly used because it simplifies arithmetic operations and ensures that the negative representation is unique.

💡**Most Significant Bit**

The leading 2 in the decimal number 231 is the most important digit or most significant digit. Compared to the other two digits, the leading 2 determines the greatest part of the number’s numerical value, as it represents the hundreds in the number.

Take, for instance, the binary number **11100111 **(231 in decimal), which can be sent as a string of data across a network in one of two ways:

starting from left to right, or starting right to left.

Most Significant Bit First and Least Significant Bit First are two common names for these two orderings.

💡**Least Significant Bit**

The rightmost bit in a string is the least significant bit. It is called that because it has the least effect on the value of the binary number, in the same way as the unit digit in a decimal number has the least effect on the number’s value.

The LSB also decides whether an even or odd number is delivered.

For example- The number 11100111 is an odd number since its LSB (1) is an odd number.

💡**Importance of Most Significant Bit (MSB)**

In the Binary number system, we treat MSB as a signed bit.

The MSB can also be used to denote the sign bit of a binary number in its one’s or two’s complement notation, with 1 meaning it’s a negative number, and 0 meaning it’s a positive number.

💡**One’s complement & two’s complement**

A binary number can be converted to its one’s complement by simply flipping all of its digits.

```
Number = 1 0 0 0 1 0
1'S Complement = 0 1 1 1 0 1 (Flipping all bits)
```

In order to calculate a binary number’s two’s complement, we first determine its one’s complement (by swapping its digits like before), and then add 1 to it.

```
Number = 1 0 0 0 1 0
1'S Complement = 0 1 1 1 0 1 (Flipping all bits)
Add 1 = 0 0 0 0 0 1
+ ____________
2'S Complement 0 1 1 1 1 0
```

In basic calculus, these two’s complements will behave like the negative number of the starting bit sequence.

Return negative number of given number.

```
Given Number = 45
Binary representation = 1 0 1 1 0 1
Int Size = This is the Int value and Int has 4 bytes (4 * 8 = 32-bit).
8 Bit representation of 45 = 0 0 1 0 1 1 0 1
Flip all values = 1 1 0 1 0 0 1 0 (1's Complement)
Now add 1 = 0 0 0 0 0 0 0 1
+ _____________________
Result = 1 1 0 1 0 0 1 1 (2's complement)
Decimal Value Of result = 211
MSB of 211 is 1, means it will consider as negative digit.
Result = 1 1 0 1 0 0 1 1
= -128 64 32 16 8 4 2 1
Final = -45.
```

💡**What is the size of Int?**

In 16-bit operating systems, the int type is usually 16 bits or 2 bytes. In 32-bit operating systems, the int type is usually 32 bits or 4 bytes.

💡**64-bit Standard sizes of Data types**

**1 byte = 8 bits**

```
Name Length
char 1 byte
short 2 bytes
int 4 bytes
long 8 bytes
float 4 bytes
double 8 bytes
long double 16 bytes
```

https://byjus.com/maths/binary-subtraction/

Negative Binary Numbers | Negative binary to decimal | Negative binary numbers to decimal | 2’s complement | 2s complement calculator | 2s complement | 2’s complement of binary number | Negative number in binary | Negative Binary Numbers Representation

- JavaScript Custom Promise | Promise Polyfill
- JavaScript Promisify | Convert Callbacks to Promises
- JavaScript Promise and Callbacks | Everything You Must Know
- CSS Display Property – Deep dive in block | inline | inline-block
- Implementation of Queue using Linked List | JavaScript
- Insert node in Linked list | Algorithm | JavaScript
- Insertion Sort in data structure | Algorithm with Examples
- Selection Sort Algorithm & K’th Largest Element in Array
- Quick Sort Algorithm with example | Step-by-Step Guide
- Dependency Inversion Principle with Example | Solid Principles
- Object-Oriented Programming | Solid Principles with Examples
- ASCII Code of Characters | String Operations with ASCII Code
- Negative Binary Numbers & 2’s Complement | Easy explanation
- Factors of a Number | JavaScript Program | Optimized Way
- LeetCode – Game of Life Problem | Solution with JavaScript
- Fibonacci series using Recursion | While loop | ES6 Generator
- JavaScript Coding Interview Question & Answers
- LeetCode – Coin Change Problem | Dynamic Programming | JavaScript
- HackerRank Dictionaries and Maps Problem | Solution with JavaScript
- React Redux Unit Testing of Actions, Reducers, Middleware & Store
- Micro frontends with Module Federation in React Application
- React Interview Question & Answers – Mastering React
- Top React Interview Question & Answer | React Routing
- React Interview Questions and Answers | React hooks
- Higher Order Component with Functional Component | React JS
- Top React Interview Questions and Answers | Must Know
- Interview Question React | Basics for Freshers and Seniors
- Cyber Security Fundamental Questions & Answers You must know
- Application & Web Security Interview Questions & Answers
- Top Scrum Master and Agile Question & Answers 2022
- Trapping Rain Water Leetcode Problem Solution
- Array Representation of Binary Tree | Full Tree & Complete Binary Tree
- Graphs in Data Structure, Types & Traversal with BFS and DFS, Algorithms
- Traversing 2 D array with BFS & DFS Algorithm in JavaScript
- Time Complexity & Calculations | All You should know
- Backspace String Compare Leetcode Problem & Solution
- Angular Interview Questions & Answers 2021 – Part 3 – JS Mount
- Why Angular is a Preferred Choice for Developers? Top Features
- Angular Interview Questions & Answers You should know Part 2
- Top 30 JavaScript Interview Questions and Answers for 2021
- React JS Stripe Payment Gateway Integration with Node | Step by Step Guide
- Create Year Month & Date dropdown List using JavaScript & JQuery
- Create Custom QR Code Component using QR Code Styling in React JS
- How to create a common Helper class or util file in React JS
- React Build Routing with Fixed Header and Navigation | React Router Tutorial
- React Create Dashboard Layout with Side Menu, Header & Content Area
- Web Application Security Best Practices | Top Tips to Secure Angular App
- HTML Form with Pure CSS & JavaScript | Custom Radio and Checkbox
- NgRx Top Interview Questions and Answers You should know
- Top 40 Awesome CSS Interview Questions & Answers You should know | CSS Tutorial
- Tips to Boost Angular App Performance | Web page Speed Optimization
- JavaScript Rotate 2D matrix 90 degrees clockwise | Top Interview Question
- HashTable Data Structure in JavaScript with Add Delete & Search Algorithms
- Trie Data Structure – Insert Search Delete & Print Program with JavaScript
- Top JavaScript Commonly asked Algorithms in Interview
- JavaScript String Permutation Program with nice explanation
- Angular NgModule, AOT, and DI, and EntryComponents with example
- Angular Dependency Injection Provider and Types of Provider