如何将2进制1100110转成格雷码(二进制转换格雷码在线)

2023-03-03 22:31:53 密码用途 思思

B(二进制)-G(格雷码)码

只需将B码后移一位前面加零,

然后将此B码与原B码相异或,

得出的结果就为该B码的Gray码

例如: B3B2B1B0 转化为G码,

就为 B3B2B1B0 (+)【异或】 0B3B2B1 B码

1100110后移一位,最前面加0变为 0110011

然后

1100110

(+) 0110011

-------------------------

0011001

二进制数11101011转换为格雷码是多少

//11101011(B)的格雷码是10011110(B),你可以用以下C代码进行转换

#includestdio.h

#includestdint.h

//格雷码编码

uint32_t Gray_Encode(uint32_t Bin)

{

    return Bin ^ (Bin  1);

}

//格雷码解码

uint32_t Gray_Decode(uint32_t unionGrayBin)

{

    uint32_t mask;

    mask = 0x80000000;

    while(mask != 0)

    {

        unionGrayBin ^= (unionGrayBin  mask)  1;

        mask = 1; 

    }

    return unionGrayBin;

}

main()

{

    uint32_t b,g;

    b = 0x000000EB;

    g = Gray_Encode(b);

    printf("g = %X\n",g);

}

格雷码转二进制公式

格雷码转二进制公式:二进位码第n位=二进位码第(n+1)位+格雷码第n位。因为二进位码和格雷码皆有相同位数,所以二进位码可从最高位的左边位元取0,以进行计算。