Witam.
Pytanie początkującego. Jak działa przesunięcie bitowe w C (Keil dla '51)? Tzn. co się dzieje z bitami które wpadają w "puste" bity?
Pisze odczyt temp. z DS18B21 i w MSB na 4 starszych bitach jeżeli są 1111 to jest temp. ujemna, jeżeli 0000 to dodatnia. Więc po odczycie bajtów do tablicy Bd[x] chcę:
n = Bd [1] //przypisać MSB do zmiennej n >>= 4 // przesunąć o 4 bity w prawo if (n == 0x0F) // porównać z 00001111 { minus = 1 } else { minus = 0 }
tylko czy na pewno będę miał zera po lewej? Gdzieś pisało że niekoniecznie będą to zera.
Pozdrawiam.