为什么格雷码被称为循环码?


8

我了解为什么将其称为自反和单位距离代码。我看不到代码中重复的任何循环模式。为什么称其为循环码?

Answers:


20

环状
sʌɪklɪk,sɪklɪk/
形容词
1周期发生; 定期重复。

您尚未提供有关“循环代码”术语的参考,但肯定存在循环模式。这在编码器光盘中最明显。

在此处输入图片说明

图1.在此光学绝对编码器光盘上,每个位的循环模式都清晰可见。

每个位都有一个重复的开关模式,其标记空间比为50%。这些位的排列方式使得一次只能更改一位。这样可以防止由于传感器未对准等导致从一个代码到相邻代码的转换错误。

在altai的答案中提到的Wikipedia Gray代码文章的后面,有一个关于Gray代码的循环性质的通用定义:“ Gn中的最后一个条目与第一个条目仅相差一个位。(代码是循环的。”)。也就是说,它可以包装,同时仍仅保留一位更改。

例如,如果步数不均匀或为2的幂,则可能会生成不具有此属性的格雷式代码。这在不需要编码器的线性编码器中是可以接受的包裹。


6
+1表示磁盘好..虽然不确定清楚的部分...我的眼睛看着那个东西正在做怪异的事; D
Trevor_G

1
即使在普通的二进制代码中,每个位的开/关模式也为50%。为什么它不是周期性的?
Rajesh R

1
二进制代码也是循环的,但不适用于编码器应用。我想您理解为什么我们首先使用格雷代码。如果没有,请告诉我,以后我可以扩大答案。
晶体管

@Transistor多余的3代码呢?为什么不循环?除第一个数字外,每位甚至超过3个代码的开关率均为50%
Zephyr

@Zephyr:我不确定你为什么要问。Excess-3不是格雷码,这是此处讨论的主题。
晶体管

15

取下下面的四位格雷码序列,将其打印出来,然后用剪刀剪掉。然后将两端缠起来并将它们用胶带粘在一起,这样就可以得到格雷码带。

在此处输入图片说明

旋转频段时,即使您越过磁带,面对您的每个点之间也只有一点点变化。

也就是说,它是一个没有开始也没有结束的循环代码。

这就是为什么以发明人弗兰克·格雷Frank Gray)的名字命名的格雷码(Gray Code )用于编码器的情况,该编码器的单个位转换消除了同时更改两个位的不确定性。

在此处输入图片说明


4
最后的图说明了所有内容。+1。
Zephyr

9

十进制15的格雷码仅需更改一次开关即可转换为十进制0。这称为格雷码的“循环”属性。

直接来自维基百科文章。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.