4 obere Bites ueberschreiben ohne die anderen zu beeinflussen

Gast #2384182
Lesenswert?
• ▲
▼
Hey,

vielleicht eine bloede Frage, aber ich finde keine Loesung dafuer.
Im Code unten schreibe ich in  ein Byte Feld eine aufsteigende Ziffer, 
was auch wunderbar klappt. Jedoch ueberschriebt es mit die 4 unteren 
Bits, was ich nicht moechte. Wie kann ich es so machen das ich nur die 4 
oberen Bits veraendere und 4 untere so lasse wie sie sind?
1
msg[0].data[2] = (count << 4);   
2
count++;

Ich hoffe das kann ich heute noch loesen und dann schlafen.

Viele Gruesse
Gast #2384196
Lesenswert?
• ▲
▼
Ja, "verdammt",

gelgentlich scheint eine Hirnwindung blockiert zu sein.
Alle anderen funktionieren, aber gerade diese eine nicht...

Jedoch ueberschriebt es mit die 4 unteren
> Bits, was ich nicht moechte. Wie kann ich es so machen das ich nur die 4
> oberen Bits veraendere und 4 untere so lasse wie sie sind?
> msg[0].data[2] = (count << 4);
> count++;

Wie wärs mit dieser Sequenz:

msg[0].data[2] &= 0x0F;                    // löschen
msg[0].data[2] |= ((count << 4) & 0xf0);   // obere 4 Bit überschreiben.


Ciao
Wolfgang Horn
Gast #2384396
Lesenswert?
• ▲
▼
Hi, verdammt,

> oh gott bin ich dumm....jetzt aber schlafen.

So geht das mit heissgelaufenen Hirnwindungen.
Je verbissener ich mich anstrenge, je größer meine Enttäuschung auf mich 
selbst, desto weiter entfernt sich die Lösung.

Wärst Du gleich schlafen gegangen, wäre es Dir vielleicht ergangen wie 
Kekulé, als er sein Gehirn wochen- und monatelang gemartet hatte, wie 
nur die Kohlenstoffwasserstoffkette aussehen mit 6C aussehen könnte, das 
aber nicht wie Hexan 14 Wasserstoffatome hat, sondern nur H6.
Erst im Halbschlaf sah er dann ein Ringelreihen vor seinen Augen und 
erkannte die Ringstruktur im Benzolmolekül.
Ob er "Heureka!" rief wie Archimedes, ist mir nicht bekannt.

Aber auch der muss sein Gehirn lange gemartert haben mit der Frage, wie 
man einen Götzen aus Massivgold unterscheiden könne von einem aus 
vergoldeten Blei. Vermutlich hat er so lange gemartert, bis er erschöpft 
war und ein Bad brauchte - und als das Badewasser schwappte, da hatte er 
dann die Lösung.

verdammt, die Methoden des Prozessmanagements können wir auch auf unsere 
mentalen Prozesse anwenden.
Nicht nur auf die des Intellekts, des begrifflichen Denkens, sondern 
auch auf die des anschaulichen Denkens, der Intuition. Die Ergebnisse 
sind dann etwas überraschend, und dann mag sie auch nicht jeder.

Ciao
Wolfgang Horn

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.