Pour des raisons technologiques (impossibilité de permuter en parfaite simultanéité deux chiffres), il est indispensable d'introduire un nouveau moyen de comptage binaire : le binaire réfléchi ou code Gray.

Grâce à ce nouveau codage des valeurs, il sera possible, par exemple, de réaliser des disques de codage angulaire : le 0 représente la partie opaque d'une piste, le 1 représentant la partie translucide. A l'aide de photodiodes, il est ainsi possible de déterminer avec précision la position angulaire d'un axe de moteur.

Le code binaire réfléchi est en outre cyclique et symétrique, ce qui permettra la simplification graphique des équations logiques (tableaux de Karnaugh).

Pour transformer un nombre binaire en binaire réfléchi il suffit de le faire glisser d'un rang à gauche (multiplication par 2), puis de l'additionner à lui-même sans faire de retenue, en supprimant dans le résultat, le bit de plus faible poids.

Codeurs de position et principe de fonctionnement

10000
01000
-------
11000

Exemple : conversion de 1000
On multiplie 1000 par 2
On lui ajoute 1000
Résultat :