C# を使用してバイトから 2 つのニブル (上位と下位) を取得する方法と、2 つのニブルを再びバイトに組み立てる方法を学習したいと考えています。
どのようなメソッドが実行可能で、どのようなライブラリが利用可能かを知るのに役立つなら、私は C# と .NET 4.0 を使用しています。
ベストアンサー1
バイトの 4 ビットを「マスク」してニブルを作成し、それらのビットをバイトの右端の位置にシフトすることができます。
byte x = 0xA7; // For example...
byte nibble1 = (byte) (x & 0x0F);
byte nibble2 = (byte)((x & 0xF0) >> 4);
// Or alternatively...
nibble2 = (byte)((x >> 4) & 0x0F);
byte original = (byte)((nibble2 << 4) | nibble1);