gray-bin
2020-12-22 本文已影响0人
Poisson_Lee
Gray[N-1:0]
Bin[N-1:0]
已知Bin求Gray:
assign Gray = (Bin >> 1) ^ Bin;
二进制右移一位后与原数据 按位 异或。
最高位G[MSB] = 0 ^ B[MSB] = B[MSB]
G[i] = B[i+1] ^ B[i];
两边异或B[i+1] 得
G[i] ^ B[i+1] = B[i]
B[i] = B[i+1] ^ G[i] 就是下面的公式
已知Gray求Bin:
最高位保留:
Bin[N-1] = Gray[N-1];
其他各位:
for(i=N-2; i>=0; i=i-1)
Bin[i-1] = Gray[i-1] xor B[i].