Gast
#1636939
Hi, ich habe eine Verständnisfrage: Im Tutorial http://www.mikrocontroller.net/articles/Bitmanipulation steht geschrieben: << = Links schieben (Bsp: a<<b ist das gleiche wie a * 2^b) desweiteren steht dort geschrieben: #define MEINBIT0 0 #define MEINBIT1 1 #define MEINBIT2 2 PORTB |= ((1 << MEINBIT0) | (1 << MEINBIT2)); // setzt Bit 0 und 2 in PORTB auf "1" (1 << n) : Zuerst wird durch die '<<'-Ausdrücke eine "1" n-mal nach links geschoben. Dies ergibt somit (in Binärschreibweise) 0b00000001 für (1 << MEINBIT0) und 0b00000100 für (1 << MEINBIT2). Aber die Beiden Verfahren sind doch nicht gleich, rechne ich nach dem 1. Beispiel: 1*2^0 | 1*2^2 somit wäre Bit 1 und Bit 4 betroffen, nicht Bit 0 und Bit 2 Kann mir jemand auf die Sprünge helfen? Danke, gruß Stefan