Pourquoi le code Gray est-il appelé un code cyclique?

8

Je comprends pourquoi il est appelé réflexif et un code de distance unitaire. Je ne vois aucun modèle cyclique qui se répète dans le code. Pourquoi est-il appelé un code cyclique?

Rajesh R
la source

Réponses:

20


icsʌɪklɪk cyclique , ˈsɪklɪk /
adjectif
1. se produisant en cycles; régulièrement répété.

Vous n'avez pas donné de référence pour la terminologie du «code cyclique» mais il y a certainement un motif cyclique. Ceci est plus évident dans un disque encodeur.

entrez la description de l'image ici

Figure 1. Le motif cyclique de chaque bit est clairement visible sur ce disque de codeur optique absolu.

Chaque bit a un motif d'activation / désactivation répétitif avec un rapport d'espace de marquage de 50%. Les bits sont disposés de sorte qu'un seul bit change à la fois. Cela évite les erreurs sur les transitions d'un code au code adjacent en raison d'un mauvais alignement des capteurs, etc.

Il existe une définition générique de la nature cyclique du code Gray plus bas dans l'article Wikipedia Wikipedia sur le code Gray mentionné dans la réponse d'altai: "La dernière entrée dans Gn ne diffère que d'un bit de la première entrée. (Le code est cyclique.)". C'est-à-dire qu'il peut encapsuler tout en conservant uniquement un changement d'un bit.

Il serait possible de générer un code Gray-ish qui n'aurait pas cette propriété si, par exemple, le nombre d'étapes n'était pas pair ou une puissance de 2. Cela pourrait être acceptable dans un encodeur linéaire qui n'aurait pas besoin de emballage.

Transistor
la source
6
+1 pour un joli disque .. Je ne suis pas sûr de la partie claire cependant ... mes yeux font des choses étranges en regardant cela; D
Trevor_G
1
Même dans le code binaire normal, chaque bit a un modèle marche-arrêt de 50%. Pourquoi n'est-il pas cyclique?
Rajesh R
1
Le code binaire est également cyclique mais ne convient pas aux applications d'encodeur. Je suppose que vous comprenez pourquoi nous utilisons le code Gray en premier lieu. Sinon, faites-le moi savoir et je pourrai développer ma réponse plus tard.
Transistor
@Transistor Qu'en est-il du code excessif-3? Pourquoi n'est-il pas cyclique? À l'exception du premier nombre, même en excès de 3 codes, chaque bit a un taux d'activation / désactivation de 50%
Zephyr
@Zephyr: Je ne sais pas pourquoi vous demandez. Excess-3 n'est pas un code Gray qui est le sujet en discussion ici.
Transistor
15

Prenez la séquence de code Gray à quatre bits ci-dessous et imprimez-la puis découpez-la avec des ciseaux. Ensuite, enroulez les extrémités et collez-les ensemble pour obtenir une bande de code gris.

entrez la description de l'image ici

Lorsque vous faites pivoter la bande, il n'y a qu'un seul changement de bit entre chaque point qui vous fait face, même lorsque vous traversez la bande.

C'est-à-dire que c'est un code cyclique qui n'a ni début ni fin.

C'est pourquoi Gray Code, du nom de son inventeur Frank Gray , est utilisé pour les encodeurs où les transitions sur un bit suppriment l'incertitude d'avoir deux bits changeant en même temps.

entrez la description de l'image ici

Trevor_G
la source
4
Le diagramme à la fin explique tout. +1.
Zephyr
9

Le code Gray pour la décimale 15 passe à la décimale 0 avec un seul changement de commutateur. C'est ce qu'on appelle la propriété "cyclique" d'un code Gray.

Directement à partir de l'article Wikipedia.

altai
la source