从两个8位值中找到14位值,这个函数的反义是什么?

use*_*893 1 c# logic bit-manipulation function

以下采用两个8位整数并将它们组合起来生成一个14位整数.

    public static int CombineBytes(int LSB, int MSB)
    {
        int _14bit;

        _14bit = MSB;
        _14bit <<= 7;
        _14bit |= LSB;

        return(_14bit);
    }
Run Code Online (Sandbox Code Playgroud)

与此功能相反的过程是什么?

例如,如果我提供了一个14位整数的函数,我会以最高有效字节和最低有效字节的形式得到两个8位整数?

Cod*_*aos 6

假设你的意思是两个7位整数,你可以通过向右移7来获得高7位,high = combined >> 7通过用二进制和low = combined & 0x7F.掩码来低7位.