Perché il codice Gray è chiamato codice ciclico?


8

Capisco perché si chiama riflesso e un codice di distanza unitaria. Non vedo alcun modello ciclico che si ripete nel codice. Perché si chiama un codice ciclico?

Risposte:


20

ciclico
ˈsʌɪklɪk, ˈsɪklɪk /
aggettivo
1. che si verificano in cicli; ripetuto regolarmente.

Non hai fornito un riferimento per la terminologia del "codice ciclico", ma c'è sicuramente un modello ciclico. Questo è più evidente in un disco encoder.

inserisci qui la descrizione dell'immagine

Figura 1. Il modello ciclico di ciascun bit è chiaramente visibile su questo disco encoder assoluto ottico.

Ogni bit ha un pattern on-off ripetuto con un rapporto mark-space del 50%. I bit sono disposti in modo tale che cambi solo un bit alla volta. Ciò impedisce errori nelle transizioni da un codice a quello adiacente a causa del disallineamento dei sensori, ecc.

C'è una definizione generica sulla natura ciclica del codice Gray più in basso nell'articolo del codice Gray di Wikipedia menzionato nella risposta di altai: "L'ultima voce in Gn differisce di un solo bit dalla prima voce (il codice è ciclico)". Cioè può avvolgere pur mantenendo solo il cambiamento di un bit.

Sarebbe possibile generare un codice Gray-ish che non avesse questa proprietà se, ad esempio, il numero di passi non fosse pari o una potenza di 2. Questo potrebbe essere accettabile in un codificatore lineare che non avrebbe bisogno di avvolgere.


6
+1 per un bel disco .. Non sono sicuro della parte chiaramente però ... i miei occhi stanno facendo cose strane guardandolo; D
Trevor_G

1
Anche nel normale codice binario, ogni bit ha uno schema on-off del 50%. Perché non è ciclico?
Rajesh R

1
Anche il codice binario è ciclico ma non è adatto per applicazioni con encoder. Presumo che tu capisca perché utilizziamo il codice Gray in primo luogo. In caso contrario, fammi sapere e posso espandere la mia risposta in seguito.
Transistor,

@Transistor Che dire del codice eccesso-3? Perché non è ciclico? Tranne il primo numero, anche in eccesso di 3 codici ogni bit ha un rapporto on-off del 50%
Zephyr

@Zephyr: non sono sicuro del motivo per cui lo stai chiedendo. Excess-3 non è un codice Gray che è l'argomento in discussione qui.
Transistor,

15

Prendi la sequenza di codici Gray a quattro bit in basso e stampala, quindi ritagliala con le forbici. Quindi avvolgi le estremità e legale insieme in modo da avere una banda di codice Gray.

inserisci qui la descrizione dell'immagine

Man mano che si ruota l'avviso di banda, c'è solo un piccolo cambiamento tra ogni punto che ti sta di fronte, anche quando si attraversa il nastro.

Cioè, è un codice ciclico che non ha né inizio né fine.

Questo è il motivo per cui Gray Code, dal nome del suo inventore Frank Gray , viene utilizzato per gli encoder in cui le transizioni a bit singolo rimuovono l'incertezza di cambiare due bit contemporaneamente.

inserisci qui la descrizione dell'immagine


4
Il diagramma alla fine spiega tutto. +1.
Zefiro,

9

Il codice Gray per il decimale 15 passa al decimale 0 con un solo cambio di interruttore. Questa è chiamata proprietà "ciclica" di un codice Gray.

Direttamente dall'articolo di Wikipedia.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.