Преобразовать значение ushort в двухбайтовые значения в C #
Как разделить ushort на две байтовые переменные в C #?
Я попробовал следующее (package.FrameID это ushort):
Когда я пытаюсь рассчитать это с бумагойкарандаш я получаю правильный результат. Кроме того, если FrameID больше байта (поэтому второй байтт ноль), это работает.
array[0] = (byte)(0x0000000011111111 & package.FrameID);
array[1] = (byte)(package.FrameID >> 8);
В моем случае package.FrameID равен 56, а результат в массиве [0] равен 16 вместо 56.
Как я могу это исправить?