格雷码是一种循环码,它的特性使它在形成和传输过程中引起的误差较小。
格雷码的特点是任意两组相邻之间只有一位不同,其余各位都相同,而且0和最大数(2的N次方减一)对应的两组格雷码之间也只有一位不同。
一、什么是格雷码?
格雷码,又叫循环二进制码或反射二进制码,格雷码是我们在工程中常会遇到的一种编码方式,它的基本的特点就是任意两个相邻的代码只有一位二进制数不同,格雷码的基本特点就是任意两个相邻的代码只有一位二进制数不同,这点很重要。典型的二进制格雷码(Binary Gray Code)简称格雷码,因1953年公开的弗兰克·格雷(Frank Gray,18870913-19690523)专利“Pulse Code Communication”而得名,当初是为了通信,现在则常用于模拟-数字转换和位置-数字转换中。
而在数字电路中,格雷码每次的变换只会有一个二进制位的跳变,极大地减少了亚稳态的产生,保证电路的稳定性,受到了广泛的应用。
而在实际的应用中,常常需要进行二进制和格雷码的相互转换。比如在后文的例题中,是以格雷码的方式进行计数(对电路来说性能更好)但计算机进行计数都是简单的二进制,所以需要熟悉和了解两者的转换规则。
二、格雷码的特征:
(1)格雷码属于可靠性编码,是一种错误最小化的编码方式。
(2)典型格雷码是一种采用绝对编码方式的准权码,其权的绝对值为2^i-1(设最低位i=1)。
(3)格雷码的十进制数奇偶性与其码字中1的个数的奇偶性相同。