Digital Electronics Page
Gray Codes
This is a technique where we convert number from binary to grays. We do this because Gray reduces the bits we need to change to get to the next number. e.g. changing from 2 to 3 decimal requires a 1 bit change.
Decimal | BCD | Gray Code |
0 | 0000 | 0000 |
1 | 0001 | 0001 |
2 | 0010 | 0011 |
3 | 0011 | 0010 |
4 | 0100 | 0110 |
5 | 0101 | 0111 |
6 | 0110 | 0101 |
7 | 0111 | 0100 |
8 | 1000 | 1100 |
9 | 1001 | 1101 |
10 | 1010 | 1111 |
Excess-3 Codes
Conversion to Excess-3
To get an excess-3 code of a decimal number simply add 3 to each decimal digit. And then we write the 4-bit binary number for each digit of the decimal number. We can find the excess-3 code of the given binary number by using the following steps:
- We find the decimal number of the given binary number.
- Then we add 3 in each digit of the decimal number.
- Now, we find the binary code of each digit of the newly generated decimal number.
We can also add 0011 in each 4-bit BCD code of the decimal number for getting excess-3 code.
Decimal | BCD | Excess-3 |
0 | 0000 | 0011 |
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 |
For example the excess-3 Code for 25.35 would be
25.35 33 33 ----- 58 68
Which is
5 0100 8 1000 6 0110 8 1000
Therefore
01001000.01101000
Addition is Excess-3
Addition in Excess-3 is just binary addition with one more rule
If you need to carry a number you need to remove +3, if you don't carry a number you need to subtract 3. i.e. if the addition of a number result in an extra digit (carry) you need to add. An Example
Let's add 27 and 39
Step 1 Calculate Binary for numbers
27 = 0010 0111 39 = 0011 1001
Step 2 Calculate Excess-3 for these
0010 0111 0011 0011 --------- 0101 1010 <= Excess-3 for 27 0011 1001 0011 0011 --------- 0110 1100 <= Excess-3 for 39
Step 3 Add Excess-3 codes together
0101 1010 0110 1100 --------- (carry 1) 1000 0110
Step 4 Add or take away 3 from each side. In this case we carried on the right so we add and subtract on the left
1000 0110 -0011 +0011 ---------- 1001 1001 9 9 <- This is the Excess-3 result NOT the answer we need to convert back to BCD to get the answer
Or we can convert the known answer 27 + 39 = 66 to Excess-3
66 0110 0110 33 0011 0011 ---- ---- ---- 99 1001 1001
Signed Number
The signed numbers are represented in three ways.
- Sign-Magnitude form
In this form, a binary number has a bit for a sign symbol. 1=negative 0=Positive
- 1's Compliment.E.g 10101110 invert each bit 01010001.This is a positive number
- 2's Compliment. E.g 10101110 invert each bit 01010001 Then add 1 to the LSB of this result 01010001+1=01010010