Code Conversion

Converting from one code form to another code form is called code conversion, like converting from binary to decimal or converting from hexadecimal to decimal.

Binary-To-Decimal Conversion

Any binary number can be converted to its decimal equivalent simply by summing together the weights of the various positions in the binary number which contain a 1.

 Binary Decimal 110112 24+23+01+21+20 =16+8+0+2+1 Result 2710

and

 Binary Decimal 101101012 27+06+25+24+03+22+01+20 =128+0+32+16+0+4+0+1 Result 18110

You should have noticed that the method is to find the weights (i.e., powers of 2) for each bit position that contains a 1, and then to add them up.

Decimal-To-Binary Conversion

There are 2 methods:

• Reverse of Binary-To-Decimal Method
• Repeat Division

Reverse of Binary-To-Decimal Method

 Decimal Binary 4510 =32 + 0 + 8 + 4 +0 + 1 =25+0+23+22+0+20 Result =1011012

Repeat Division-Convert decimal to binary

This method uses repeated division by 2.

Convert 2510 to binary

 Division Remainder Binary 25/2 = 12+ remainder of 1 1 (Least Significant Bit) 12/2 = 6 + remainder of 0 0 6/2 = 3 + remainder of 0 0 3/2 = 1 + remainder of 1 1 1/2 = 0 + remainder of 1 1 (Most Significant Bit) Result 2510 = 110012

The Flow chart for repeated-division method is as follows:

Binary-To-Octal / Octal-To-Binary Conversion

 Octal Digit 0 1 2 3 4 5 6 7 Binary Equivalent 000 001 010 011 100 101 110 111

Each Octal digit is represented by three binary digits.

Example:

100 111 0102 = (100) (111) (010)2 = 4 7 28

Repeat Division-Convert decimal to octal

This method uses repeated division by 8.

Example: Convert 17710 to octal and binary

 Division Result Binary 177/8 = 22+ remainder of 1 1 (Least Significant Bit) 22/ 8 = 2 + remainder of 6 6 2 / 8 = 0 + remainder of 2 2 (Most Significant Bit) Result 17710 = 2618 Binary = 0101100012

Example:

2AF16 = 2 x (162) + 10 x (161) + 15 x (160) = 68710

Repeat Division- Convert decimal to hexadecimal

This method uses repeated division by 16.

Example: convert 37810 to hexadecimal and binary:

 Division Result Hexadecimal 378/16 = 23+ remainder of 10 A (Least Significant Bit)23 23/16 = 1 + remainder of 7 7 1/16 = 0 + remainder of 1 1 (Most Significant Bit) Result 37810 = 17A16 Binary = 0001 0111 10102

 Hexadecimal Digit 0 1 2 3 4 5 6 7 Binary Equivalent 0000 0001 0010 0011 0100 0101 0110 0111

 Hexadecimal Digit 8 9 A B C D E F Binary Equivalent 1000 1001 1010 1011 1100 1101 1110 1111

Each Hexadecimal digit is represented by four bits of binary digit.

Example:

1011 0010 11112 = (1011) (0010) (1111)2 = B 2 F16

• Convert Octal (Hexadecimal) to Binary first.
• Regroup the binary number by three bits per group starting from LSB if Octal is required.
• Regroup the binary number by four bits per group starting from LSB if Hexadecimal is required.

Example:

Convert 5A816 to Octal.

 Hexadecimal Binary/Octal 5A816 = 0101 1010 1000 (Binary) = 010 110 101 000 (Binary) Result = 2 6 5 0 (Octal)