-
-
Neuer Benutzer
Öfters hier
int später wieder zusammensetzen (c#)
hallo,
ich weiß es passt nicht wirklich hierher, aber ich habe folgendes problem...
schicke ein signed int32_t über die serielle schnittstelle an den pc.
dort lese ich mit einer in c# geschreibenen software wieder aus.
habe ursprünglich das zusammensetzen der 8bit werte zu einem 32 bit zahl ursprünglich so gelöst:
byte[] buffer = new byte[20];
int lleistung = 0;
lleistung = buffer[13];
lleistung += (buffer[12] << ;
lleistung += (buffer[11] << 16);
funktiniert auch gut, solange nur positive zahlen ankommen. ist logisch, da ja die zahlen im zweierkompliment vorliegen... habe mir dann gedacht so müsste es gehen.
lleistung = (int)((buffer[11] << 24) & (buffer[12] << 16) & (buffer[13] << & (buffer[14]));
lleistung ist aber immer 0.
wie macht man das richtig?
vielen dank
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen