Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Bitweises verunden - wo liegt der Fehler? Kategorie: Programmierung (von Thomas - 19.01.2005 12:35)
Als Antwort auf Bitweises verunden - wo liegt der Fehler? von Harald - 18.01.2005 8:12
Ich nutze:
C-Control II Unit, eigenes Board, OSOPT V3.0
Hallo Harald,

> high_nibble = [byte_variable] & 00001111;
> low_nibble = [byte_variable] & 11110000;
>
> Problem:
>
> für den high_nibble funktioniert es korrekt; für den low_nibble erhalte ich immer 0.

poste doch bitte den gesamten Code und welches Ergebnis Du vermutest.

Wenn Du das High-Nibble maskieren willst, must Du das & mit 0b1111000 und für das Low-Nibble
mit 0b00001111 durchführen.


thread main {
  byte high_nibble, low_nibble, testpattern;

  testpattern = 0b10100101;
  high_nibble = testpattern & 0b11110000;  // ist dann 0b1010 0000
  low_nibble  = testpattern & 0b00001111;  // ist dann 0b0000 0101
}


Beste Grü�e
Thomas


    Antwort schreiben


Antworten: