Konvertieren ein ushort-Wert in zwei byte-Werte in C#

Wie kann ich die split ein ushort in zwei byte-Variablen in C#?

Ich habe versucht, die folgenden (Paket.FrameID ist ushort):

Wenn ich versuche zu berechnen, diese mit Papier&Bleistift bekomme ich das richtige Ergebnis. Auch, wenn FrameID ist größer als ein byte (also das zweite byte nicht null), dann funktioniert es.

array[0] = (byte)(0x0000000011111111 & package.FrameID);
array[1] = (byte)(package.FrameID >> 8);

In meinem Fall Paket.FrameID ist 56 und das Ergebnis in array[0] 16, statt 56.

Wie kann ich dieses Problem beheben?

InformationsquelleAutor user2071938 | 2013-09-03
Schreibe einen Kommentar