BCD Codes
BCD Codes
1
Binary Coded Decimal
(BCD) is a type of binary code used to represent a given
decimal number in an equivalent binary form.
The BCD equivalent of a decimal number is written by
replacing each decimal digit in the integer and fractional
parts with its four-bit binary equivalent.
The BCD code described above is more precisely known
as the 8421 BCD code .
As an example, the BCD equivalent of (23.15)10 is written
as (0010 0011.0001 0101)BCD
A given BCD number can be converted into an equivalent
binary number by first writing its decimal equivalent and
then converting it into its binary equivalent
Example: find the binary equivalent of the BCD number 0010
1001.0111 0101
Solution :
.BCD number: 0010 1001.0111 0101.
• Corresponding decimal number: 29.75.
• The binary equivalent of 29.75 can be determined to be
11101 for the integer part and .11 for the fractional part.
• Therefore, (0010 1001.0111 0101)BCD =(11101.11)2.
code is the most popular of all the BCD codes, it is simply referred
to as the BCD code.
The process of binary-to-BCD conversion is the same as
the process of BCD-to-binary conversion executed in reverse
order. A given binary number can be converted into an
equivalent BCD number by first determining its decimal
equivalent and then writing the corresponding BCD
equivalent.
Example: find the BCD equivalent of the binary number
10101011.101:
Solution :
• The decimal equivalent of this binary number can be determined to be 171.625.
• The BCD equivalent can then be written as 0001 0111 0001.0110 0010 0101.
Other Decimal Codes
Other weighted BCD codes include the 4221 BCD and 5421
BCD codes. Again, 4, 2, 2 and 1 in the 4221 BCD code and 5, 4,
2 and 1 in the 5421 BCD code represent weights of the relevant
bits. Table 2.1 shows a comparison of 8421, 4221 and 5421 BCD
codes.
As an example, (98.16)10 will be written as 1111 1110.0001 1100 in
4221 BCD code and 1100 1011.0001 1001 in 5421 BCD code. Since
the 8421
Excess-3 Code
The excess-3 code is another important BCD code. The
excess-3 code for a given decimal number is determined by
adding ‘3’ to each decimal digit in the given number and then
replacing each digit of the newly found decimal number by
its four-bit binary equivalent.
Example: find the excess-3 code for the decimal number 597
Solution:
The addition of ‘3’ to each digit yields the three new
digits/numbers ‘8’, ‘12’ and ‘10’.
• The corresponding four-bit binary equivalents are 1000, 1100
and 1010 respectively.
• The excess-3 code for 597 is therefore given by: 1000 1100
1010=100011001010.
Gray Code
•It is an unweighted binary code in which two successive values differ only by 1 bit.
Owing to this feature, the maximum error that can creep into a system using the binary
Gray code to encode data is much less than the worst-case error encountered in the
case of straight binary encoding.
•Binary–Gray Code Conversion
1.Begin with the most significant bit (MSB) of the binary number. The MSB of the Gray
code equivalent is the same as the MSB of the given binary number.
2. The second most significant bit, adjacent to the MSB, in the Gray code number is
obtained by adding the MSB and the second MSB of the binary number and ignoring
the carry, if any. That is, if the MSB and the bit adjacent to it are both ‘1’, then the
corresponding Gray code bit would be a ‘0’.
3. The third most significant bit, adjacent to the second MSB, in the Gray code number
is obtained by adding the second MSB and the third MSB in the binary number and
ignoring the carry, if any.
4. The process continues until we obtain the LSB of the Gray code number by the
addition of the LSB and the next higher adjacent bit of the binary number.
The conversion process is further illustrated with the
help of an example showing step-by-step conversion of
(1011)2 into its Gray code equivalent:
Binary 1011
Gray code 1- - -
Binary 1011
Gray code 11- -
Binary 1011
Gray code 111-
Binary 1011
Gray code 1110
• Gray Code–Binary Conversion
A given Gray code number can be converted into its binary equivalent by going through
the following steps:
1. Begin with the most significant bit (MSB). The MSB of the binary number is the same
as the MSB of the Gray code number.
2. The bit next to the MSB (the second MSB) in the binary number is obtained by adding
the MSB in the binary number to the second MSB in the Gray code number and
disregarding the carry, if any.
3. The third MSB in the binary number is obtained by adding the second MSB in the
binary number to the third MSB in the Gray code number. Again, carry, if any, is to be
ignored.
4. The process continues until we obtain the LSB of the binary number.
The conversion process is further illustrated with the help
of an example showing step-by-step conversion of the
Gray code number 1110 into its binary equivalent:
Gray code 1110
Binary 1- - -
Gray code 1110
Binary 10 - -
Gray code 1110
Binary 101
Gray code 1110
Binary 1011