Hi, in einer Bitoperation setze ich die beiden Bytes d1 und d2 zu x zusammen: x = d2 << 8 | d1 34 << 8 | 12 = 1234 (alles hex) Wie stellt man die obere Formel um? Ich habe z.B. 0xfffffffff1234 und möchte erstmal die letzten 4 Ziffern isolieren (0x1234) und in d1 und d2 aufteilen.
Nachtrag: Wenn d1 und d2 ohnehin nur 1 Byte groß sind (z.B. uint8_t), dann geht es auch einfacher: d1 = x; d2 = x >> 8;
Danke, funktioniert alles. :-) Ich habe die zuerst genannten Formeln benutzt. Kannst Du vielleicht noch kurz erklären, was genau die Verundung von x mit 0xff macht?
Sollte es nicht so sein? 34 << 8 | 12 = 3412 bzw. 12 << 8 | 34 = 1234
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.