Skip to main content

Binary Codes

Binary codes 

  • Weighted codes
  • Non-weighted codes
  • Alphanumeric codes
  • Error detecting and correcting codes

Weighted Codes

Obey positional weight principle.
A specific weight is assigned to each position of the number.
Eg : Binary, BCD codes

Non-weighted Codes

Do not obey positional weight principle.
Positional weights are not assigned.
Eg : excess-3 code, Gray code

Alphanumeric Codes

Designed to represent numbers as well as alphabetic characters.
Capable of representing symbols as well as instructions.
Eg : ASCII, EBCDIC

Error Detecting and Correcting Codes

When digital data is transmitted from one system to another, an unwanted electrical disturbance called ‘noise’ may get added to it.
This can cause an ‘error’ in digital information. That means a 0 can change to 1 or 1 can change to 0.
To detect and correct such errors special type of codes capable of detecting and correcting the errors are used.
Eg : Parity code, Hamming code.

BCD(Binary Coded Decimal) Code

In this code each digit is represented by a 4-bit binary number.
The positional weights assigned to the binary digits in BCD code are 8-4-2-1 with 1 corresponding to LSB and 8 corresponding to MSB.

Conversion from decimal to BCD

The decimal digits 0 to 9 are converted into BCD, exactly in the same way as binary.
Digital to BCD
0 - 0000
1 - 0001
2 - 0010
3 - 0011
4 - 0100
5 - 0101
6 - 0110
7 - 0111
8 - 1000
9 - 1001

Invalid BCD codes

With 4 bits we can represent total sixteen numbers (0000 to 1111) but in BCD only first ten codes are used (0000 to 1001)
Therefore remaining six codes (1010 to 1111)are invalid in BCD.

Conversion of bigger decimal numbers to BCD

Express each decimal digit with its equivalent 4-bit BCD code
Eg : Convert (964)10to its equivalent BCD code.

Decimal Number →    9    6    4   
Binary Equivalent →    1001    0110    0100   

There fore (964)10= (1001 0110 0100)BCD

Hence smallest number in BCD is 0000 i.e., 0 and largest is 1001 i.e., 9
after which 10 will be expressed by combinations i.e., 0001 0000 and is known as  packed BCD

Comparison with Binary

Less efficient than binary, since conversion of a decimal number into BCD needs more bits than in binary
     Eg., (22)10= (10110)2= (0010 0010)BCD
              So BCD uses more bits than binary for the same decimal number.
              BCD arithmetic is more complicated than binary arithmetic.
BCD –decimal conversion is simpler than Binary –decimal conversion.

Advantages of BCD codes

Its similar to decimal number system.
We need to remember binary equivalents of decimal numbers 0 to 9 only.
Conversions from decimal to BCD or BCD to decimal is very simple and no calculation is needed.

Disadvantages of BCD codes

Less efficient than binary, since conversion of a decimal number into BCD needs more bits than in binary
BCD arithmetic is more complicated than binary arithmetic.

XS-3 (Excess-3)Code

Non-weighted code.
Derived from BCD code (8-4-2-1 code)words by adding (0011)2 or (3)10 to each code word.
                             Write each digit in 4-bit binary code                       + (0011)
                                Decimal                                                BCD                     XS-3
Therefore Hence smallest number in XS-3 is 0011 i.e., 0 and largest is 1100 i.e., 9
                  

Decimal | BCD | XS-3                                                       
                                                                                       1    0001    0100
 2    0010    0101                                                         3    0011    0110                                               
 4    0100    0111   
 5    0101    1000
 6    0110    1001 
 7    0111    1010 
 8    1000    1011 
 9    1001    1100                                                                           

Conversion of decimal numbers XS-3 code

Eg : Convert (964)10to its equivalent XS-3 code.

         Decimal Number →            9                   6         4   
                  XS-3 Equivalent →           1100    1001       0111       
                 
Therefore (964)10= (1100 1001 0111)XS-3
Conversion of XS-3 code to equivalent decimal numbers:
Eg : Convert (0011 1010 1100)XS-3to its equivalent decimal number.

Therefore   (1010  0011  1100)XS-3= (709)10
     

Gray Code

Non-weighted code.
It has a very special feature that only one bit will change, each time the decimal number is incremented, therefore also called unit distance code.

Binary and Gray conversions

For Gray to binary or binary to Gray conversions let’s understand rules for Ex-OR
Ex-OR is represented by symbol (    )

Conversion from Binary to Gray code

Step 1: Write MSB of given Binary number as it is.
Step 2: Ex-OR this bit with next bit of that binary number and write the result.
Step 3: Ex-OR each successive sum until LSB of that binary number is reached.
Eg : Convert (1010011)2to its equivalent Gray code.
  Therefore (1010011)2  =  (1111010)Gray
 

Conversion from Gray to Binary

Step 1: Write MSB of given gray number as it is.
Step 2: Ex-OR this bit with next bit of that binary number and write the result.
Step 3: Continue this process until LSB of that binary number is reached.
Eg: Convert (1010111)Gray to its equivalent Binary number.

ASCII-(American Standard Code for Information Interchange)

Universally accepted alphanumeric code.
Used in most computers and other electronic equipments. Most computer keyboards are standardized with ASCII.
When a key is pressed, its corresponding ASCII code is generated which goes to the computer.
Contains 128 characters and symbols.
Since 128 = 27hence we need 7 bits to write 128 characters. Therefore ASCII is a 7 bit code.
Can be represented in 8 bits by considering MSB = 0 always.
Hence we have ASCII codes from 0000 0000 to 0111 1111 in binary or from 00 to 7F in hexadecimal.
The first 32 characters are non-graphic control commands (never displayed or printed) eg., null, escape
The remaining characters are graphic symbols (can be displayed and printed). This includes alphabets (capital and small), punctuation signs and commonly used symbols.
So ASCII code consists of 94 printable characters, 32 non printable control commands and “Space” and “Delete” characters = 128 characters

EBCDIC-(Extended Binary Coded Decimal Interchange Code)

8-bit code.
Total 256 characters are possible, however all are not used.
There is no parity bit used to check error in this code set.


Comments

Trending⚡

Happy birthday Hardik Pandya | In C programming

  Happy birthday Hardik Pandya . Now you are  28 years old. Great achievement you have. Let's we want to talk more about Hardik pandya. He is great cricketer. Pandya is awesome. In this Blog Post we are going to wish pandya " Happy birthday using C program". Let's tune with us till end. Now we have to wish pandya, so we are going to use printf () function printing message to pandya as " Happy birthday Hardik pandya Now you are 28 years old". Hardik pandya was born on 11 October in 1993. Now we are going to declare a variable called as current_age = 2021 - 1993. It calculate current age Of Hardik pandya. See the "Happy birthday pandya" using c programming. If you liked this Blog Post then don't forget to share with your computer science learning friends. Once again " Happy birthday Hardik Pandya sir". Read also Happy Rakshabandhan wish using C program Friendship day 2021 greetings in C

Understanding link.click() in JavaScript

Hey! Today i am going to share with you how to use link.click() function in javascript As a JavaScript developer, you may come across the need to programmatically click a link on a web page. The link.click() method is a commonly used way to do this, and it is important to understand how it works and when to use it. What is link.click()? link.click() is a method that can be used to simulate a click on a link element in JavaScript. It is typically used when you want to trigger a link click event programmatically, rather than requiring the user to physically click the link. How to use link.click() Using link.click() is relatively straightforward. First, you need to select the link element you want to click using a DOM selector such as getElementById() or querySelector(). Then, you can call the click() method on the link element to simulate a click. Here is an example: // select the link element const myLink = document.getElementById('my-link'); // simulate a cl...

Best course Recommendation of IT field in 2023

Recommend me best course 🎉50% Discount on registration today itself 🎉! Join Course Now In today's fast-paced digital age, staying updated with the latest technology trends is crucial for professionals looking to advance in their careers. With technology rapidly evolving, it is important to continuously upskill and gain new knowledge to stay relevant in the job market. In 2023, there are several courses in technology that are gaining popularity and are highly recommended for professionals seeking to enhance their skills in data science, analytics, and digital marketing. Data Science: Data science is an interdisciplinary field that combines statistical analysis, machine learning, and computer science to extract insights and knowledge from data. With the increasing amount of data available, data scientists are in high demand across various industries. The best courses in data science for 2023 are th...

Best Programming Languages to Learn in 2022-2023 | Programming Guide For Beginners

Hey everyone ! Today I am going to share with you which programming language you must learn and why you must learn in year 2022. There are so many programmers,coders, computer science students have a Question in their mind , Which programming language I should have to learn ? I am going to answer this very Important Question. Please tune with me till the end. This article will be very helpful for every computer science and coding enthusiast. Let's get started. The world of programming is dynamic. It means the need for language changes according to duration. Every year we see a new language. Everyone gives us feedback on which language we have to learn. But it's not about which language you must've learn , I would like to ask you whats your purpose is in learning a programming language. Why do you want to learn a programming language ? Well you have answers like I want to create softwares , Applications and websites, decentralised apps, cryptocurrency, blockchai...

What is programming explained in simple words

Hi my dear friends today in this blog post we are going to know what programming is? In simple words I will explain to you programming. Nowadays we are watching real life use of programming. How computers learn to speak, talk and do the specified complex task for us. We are all keen to know what is exactly programming? Programming is the process of creating instructions that a computer can understand and execute. These instructions, also known as code, are written in a programming language that is specific to the task at hand. The history of programming can be traced back to the mid-20th century, with the development of the first electronic computers. The first programming languages were known as machine languages, which were specific to a particular type of computer. As computers became more sophisticated, high-level programming languages were developed, such as FORTRAN and COBOL, which were easier for humans to read and write. These languages allow programmers to write code t...

Define a macro EQUALSTR which accepts two strings and compare equality of both string

Define a macro EQUALSTR which accepts two strings and compare equality of both string #include<stdio.h>  #include<string.h>  #define EQUALSTR(str1,str2) strcmp(str1,str2)?0:1  void main()  {  char str1[10],str2[10];  printf("\n Enter the two strings: ");  gets(str1);  gets(str2);  if(EQUALSTR(str1,str2))  printf("\n Strings are equal");  else  printf("\n Strings are not equal");  } Also Read C program to find largest of two numbers using Structure Predefined Macro program Macros vs Functions Preprocessor Syntax Task Performed by Preprocessor