话题
搜索

格雷代码


格雷码是一种数字编码,使相邻的数字只有一个数字相差1。术语格雷码通常用于表示“反射”代码,或者更具体地说,二进制反射格雷码。

要转换二元的d_1d_2…d_(n-1)d_n对应的二进制反射灰度代码,从右边的数字开始dn(数字)(该n个第,或者最后,数字). 如果d(n-1)为1,替换dn(数字)通过1-数字;否则,保持不变。然后继续d_(n-1)。继续到第一个数字 d_1日,此后保持不变d_0(0)假定为0。产生的结果g_1g_2…g_(n-1)g_n是反射的吗二进制格雷码。

转换二进制反射格雷码g_1g_2…g_(n-1)g_n二元的数字,用重新开始n个第个数字和计算

 Sigma_n=sum_(i=1)^(n-1)g_i(mod 2)。

如果西格玛_n为1,替换g_n通过1-g_n;否则,保持不变。下一次计算

 西格玛_(n-1)=总和_(i=1)^(n-2)g_i(mod 2),

等等。结果数字d_1d_2…d_(n-1)d_n二元的对应于初始二进制反射格雷码的数字。

之所以调用反射代码,是因为它可以按以下方式生成。取格雷码0,1。向前写,然后向后写:0,1,1,0。然后预先发送0到上半场,1到下半场:00,01,11,10。继续,写入00,01,11,10,10,11,01,00以获得:000,001,011,010,110,111,101,100,…(OEIS)A014550型). 因此,每次迭代代码数量加倍。

格雷码的二进制图

上图显示了前255(上图)和前511(下图)格雷码的二进制表示。下表给出了与前几个非负整数相对应的格雷码。

00201111040111100
11211111141111101
211221110142111111
310231110043111110
4110241010044111010
5111251010145111011
6101261011146111001
7100271011047111000
81100281001048101000
91101291001149101001
101111301000150101011
111110311000051101010
1210103211000052101110
1310113311000153101111
1410013411001154101101
1510003511001055101100
16110003611011056100100
17110013711011157100101
18110113811010158100111
19110103911010059100110

二进制反射格雷码与河内塔巴格纳听众,以及到哈密顿循环属于超立方体图表s(包括方向反转;Skiena 1990年,第149页)。


另请参见

九连环,二元的,希尔伯特曲线,莱瑟公式,Thue-Morse序列,河内的

与Wolfram一起探索| Alpha

工具书类

Gardner,M.《二进制格雷码》第2章打结甜甜圈和其他数学娱乐。纽约:W.H。弗里曼,1986E.N.吉尔伯特。“灰色代码和路径n个-立方体。"贝尔系统技术J。 37, 815-826,1958Gray,F.《脉冲编码通信》,美国专利编号26320581953年3月17日。Nijenhuis,A.和Wilf,H。组合计算机和计算器算法,第二版。纽约:学术出版社,1978出版社,W.H。;弗兰纳里,B.P。;Teukolsky,S.A。;和韦特林。《灰色代码》§20.2数字的FORTRAN:科学计算的艺术,第二版。英国剑桥:剑桥大学出版社,第886-888页,1992年。Skiena,S.“格雷代码。“§1.5.3实施离散数学:组合数学和图论与数学。阅读,马萨诸塞州:Addison-Wesley,第42-43页和149页,1990年。新泽西州斯隆。答:。顺序A014550型在线百科全书整数序列的。"瓦尔迪,I。计算型数学娱乐。加利福尼亚州红木市:Addison-Wesley,第111-112页和2461991年。威尔夫,H.S。组合的算法:更新。宾夕法尼亚州费城:SIAM,1989年。

引用的关于Wolfram | Alpha

格雷代码

引用如下:

埃里克·魏斯坦(Eric W.Weisstein)。“灰色代码”来自数学世界--Wolfram Web资源。https://mathworld.wolfram.com/GrayCode.html

主题分类