Graykod
Från Rilpedia
Graykod eller reflekterad binärkod är en binär kodning med den speciella konstruktionen att vid inkrementering eller dekrementering ändras endast en bit.
Innehåll |
Applikationer
Applikationer är till exempel digitala vinkelgivare och andra applikationer där man behöver omvandla ett mekaniskt läge till ett digitalt värde. Sådan avkodning görs normalt antingen med hjälp av kontakter som glider över elektriska ledningsbanor eller optiska läsgafflar som rör sig över en omväxlande svärtad och genomskinlig glasskiva.
Fördelar
Problemet med att använda vanlig binärkod är att i gränslägena mellan två siffror kan man få i stort sett vilket värde som helst. Till exempel kan man (jämför binär- och graykod i tabellen) vid växling mellan 7 och 8 få vilket värde som helst mellan 0 och 15, växling mellan 11 och 12 kan ge vad som helst mellan 8 och 15 osv, beroende på i vilken ordning siffrorna växlar. Graykoden ändrar endast en bit vid växling mellan två värden, och koden är konstruerad så att denna bit bara betyder "det ena eller det andra" av dessa två. Man kan alltså inte få till exempel 14 genom att ställa givaren i läget mitt emellan 7 och 8, bara antingen 7 eller 8. Nackdelen med graykod är att man måste översätta den till vanlig binärkod innan den blir användbar. Det gör man i en avkodare eller direkt i datorn, om givaren är ansluten till en sådan.
4-bitars graykod
Dec.värde | Gray-kod | Binärkod |
---|---|---|
0 | 0000 | 0000 |
1 | 0001 | 0001 |
2 | 0011 | 0010 |
3 | 0010 | 0011 |
4 | 0110 | 0100 |
5 | 0111 | 0101 |
6 | 0101 | 0110 |
7 | 0100 | 0111 |
8 | 1100 | 1000 |
9 | 1101 | 1001 |
10 | 1111 | 1010 |
11 | 1110 | 1011 |
12 | 1010 | 1100 |
13 | 1011 | 1101 |
14 | 1001 | 1110 |
15 | 1000 | 1111 |