Register mit Bit bitweise vergleichen?

OP #865307
Lesenswert?

Sorry falls ich nerve aber hab da noch eine Verständnis Frage:

Was heisst "(RegisterA & (<<Bit7)?

Ist die Aussage dann wahr wenn Bit7= high(logisch 1) und irgendein 
anderes Bit vom RegisterA = high (logisch 1) ist.

Wie funktioniert das genau, wenn man Register mit einzelnen Bits 
bitweise vergleicht?
#865316
Lesenswert?

Lukas Piet wrote:
> Was heisst "(RegisterA & (<<Bit7)?

Das ist leider syntaktische Unsinn. Ich vermute, es sollte heißen:

   RegisterA & (1 << Bit7)

wobei Bit7 als 7 definiert ist.

Es bedeutet: die 1 wird 7 Bit nach links verschoben und bitweise mit 
RegisterA und-verknüpft.

M.a.W.: Das Ergebnist ist ganau dann != 0, wenn in RegisterA das Bit 7 
eine 1 ist.
#865341
Lesenswert?

Lukas Piet wrote:
> Wieso Unsinn?
>
> Das Tutorial schreibt doch mit diesem Syntax.
>
> Zitat aus dem Tutorial:
>
> while ( ADCSRA & (1<<ADSC) ) {
>                              ;      // auf Abschluss der Konvertierung
> warten
>                              }

Dann lies mal nach, was du in deinem Orginalposting zusammengeradebrecht 
hast...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren