格雷码

Posted Protogenoi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了格雷码相关的知识,希望对你有一定的参考价值。

binary to gray

 1 odule bin2gry(Gry,Bin);
 2 parameter length = 8;     //以八位示例
 3 output [length-1:0] Gry;
 4 input [length-1:0] Bin;
 5 
 6 reg [length-1:0] Gry;
 7 integer i;
 8 
 9 always @ (Bin)
10 begin
11     for(i=0;i<length-1;i=i+1)
12         Gry[i]=Bin[i]^Bin[i+1];
13     Gry[i]=Bin[i];
14 end
15 
16 /*另一种简单的实现方法如下:*/
17 // assign Gray = (Bin >> 1) ^ Bin;
18 
19 endmodule

grey to binary

 1 module gry2bin(Gry,Bin);
 2 parameter length = 8; 
 3 input [length-1:0] Gry; 
 4 output [length-1:0] Bin; 
 5 
 6 reg [length-1:0] Bin; 
 7 integer i;
 8 always @ (Gry)
 9 begin    
10     Bin[length-1]=Gry[length-1];    
11     for(i=length-2;i>=0;i=i-1)        
12         Bin[i]=Bin[i+1]^Gry[i];
13 end
14 endmodule

 

 

以上是关于格雷码的主要内容,如果未能解决你的问题,请参考以下文章

腾讯生成格雷码

格雷码如何转换成二进制?

格雷码那点事——递归非递归实现

格雷码的实现

LeetCode 格雷码序列的生成

[腾讯]生成格雷码