本文目录一览

1,格林码是什么编码

"格林码"没有听说过,我只记得好象有种二进制编码叫"格雷码"好像是一种循环码.相邻码之间只有一位二进制位发生变化

格林码是什么编码

2,什么是格雷码

编码器都是用格雷码
格雷码是指当数值递增1或递减1时,用二进制表示的码位中只有1位发生变化。它主要用于工业控制中的模拟量和数值量的平滑处理,以策安全。详情你可查百度的相关词条。

什么是格雷码

3,通信方面用的格雷编码是怎么回事

格雷码是循环码。转换:将16进制->二进制:十六进制的一位转成二进制的四位;二进制码->格雷码:从最右边一位起,依次将每一位与左边一位异或,作为对应格雷码该位的值,最左边一位不变(相当于左边是0);

通信方面用的格雷编码是怎么回事

4,什么是格雷码知道的请说下

格雷码(Gray code),又叫循环二进制码或反射二进制码 在数字系统中只能识别0和1,各种数据要转换为二进制代码才能进行处理,格雷码是一种无权码,采用绝对编码方式,典型格雷码是一种具有反射特性和循环特性的单步自补码,它的循环、单步特性消除了随机取数时出现重大误差的可能,它的反射、自补特性使得求反非常方便。格雷码属于可靠性编码,是一种错误最小化的编码方式

5,格雷码是什么

在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(gray code)。 另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码或反射码。在数字系统中,常要求代码按一定顺序变化。例如,按自然数递增计数,若采用8421码,则数0111变到1000时四位均要变化,而在实际电路中,4位的变化不可能绝对同时发生,则计数中可能出现短暂的其它代码(1100、1111等)。在特定情况下可能导致电路状态错误或输入错误。使用格雷码可以避免这种错误。格雷码有多种编码形式。
循环二进制码或反射二进制码

6,C语言 递归 输出格雷码Gray码

你查百科:一般的,普通二进制码与格雷码可以按以下方法互相转换: 二进制码->格雷码(编码):从最右边一位起,依次将每一位与左边一位异或(XOR),作为对应格雷码该位的值,最左边一位不变(相当于左边是0); 格雷码-〉二进制码(解码):从左边第二位起,将每位与左边一位解码后的值异或,作为该位解码后的值(最左边一位依然不变)如果非要按递归来做,可以这样,如果要输出n位格雷码,那么递归层为N:0层负责第0位,1层负责第1位,2层负责第2位。。。。第n-1层负责第n-1位(也就是gray的最高位)这样就可以写出递归函数的轮廓了。void gray(int n) if(0==n) ……gray(n-1);//把处理第n-1位的任务交下一层处理}对于第0位来说,每4位为一个循环周期——01 10.对于第1位来说,每8位为一个循环周期——0011 1100.对于第2位来说,每16位为一个循环周期——00001111 11110000.……对于第N位来说,每2^(N+2)为一个循环周期。看到这里你有什么启发?所以我想你应该设置一个全局变量:int flag=1.对于gray(i)函数来说,可以通过set=flag%(2^(i+2))来设置该第位(当2^i<set&&set<=3*2^i,就设第i位为1)

文章TAG:格雷码  格林码是什么编码  
下一篇