1

以下は、2 つの 8 ビット整数を取り、それらを結合して 14 ビット整数を生成します。

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

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

        return(_14bit);
    }

この関数の反対のプロセスは何ですか?

たとえば、関数に 14 ビット整数を指定した場合、最上位バイトと最下位バイトの形式で 2 つの 8 ビット整数を取得できますか?

4

1 に答える 1

6

2 つの 7 ビット整数を意味すると仮定すると、7 を右にシフトすることで上位 7 ビットを取得し、high = combined >> 72 進数と でマスクすることで下位 7 ビットを取得できますlow = combined & 0x7F

于 2012-05-30T22:53:25.647 に答える