C Syntax Bitoperatoren

Gast #3412802
Lesenswert?

sorry :D bisschen unverständlich :D

also was ich meine...

in meinem Codebeispiel steht doch das ich alle 3 Register beschreiben 
will...

das sage ich z.B mit ... Register 1 | Register 2 |... usw...

aber der Tiefstricht bedeutet doch "Oder" oder sehe ich was falsch?

normaler weiße müsste es doch

Register 1 & Register 2 &... usw heißen oder ?
#3412803
Lesenswert?

Jan schrieb:
> Hallo Freunde (;
>
> kurze Frage! Was mir nicht ganz klar ist...
>
> & = UND
> | = ODER
>
>
> [c]TCCR1B = (1<<CS02) | (0<<CS01) | (0<<CS00); // Clock Select
> Register[c]
>
> heißt das in diesem Code nicht UND ?
Nein

> oder verstehe ich das falsch?
Ja.

Die Bits sollen gesetzt werden, darum werden sie Verodert. Rechne doch 
mal aufm Papier nach. Wäre schneller gegangen als hier nen sinnlosen 
Thread aufzumachen.

Und Konstruke wie (0<<CS01) sind absolut sinnlos. Sie werden von 
Anfängern falsch verwendet die keinen Plan haben und von möchtegern 
Profis um zu dokumentieren dass ein Bit nicht gesetzt wird. Also absolut 
nichts getan wird. Großes Kino.
#3412822
Lesenswert?

> in meinem Codebeispiel steht doch das ich alle 3 Register beschreiben
Das sind keine Register. Du setzt einzelne Bits in EINEM Register.

Die Bits werden durch ihre Bitmaske repräsentiert, welche aus der 
Bitnummer und einem Shift erzeugt wird (1<<NR).

Und du musst verordern um ein Bit zu setzen. Darum das ODER (= PIPE).

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