C/Powszechne praktyki: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Kj (dyskusja | edycje)
Nie podano opisu zmian
Kj (dyskusja | edycje)
Linia 94:
unsigned char i = 2;
i |= 64;
 
Gdzie 64=2<sup>6</sup>. Odczytywanie wykonuje się za pomocą tzw. maski bitowej. Polega to na:
# wyzerowaniu bitów, które są nam w danej chwili niepotrzebne
# odpowiedniemu przesunięciu bitów, dzięki czemu szukany bit znajdzie się na pozycji pierwszego bitu od prawej
Do "wyłuskania" odpowiedniego bitu możemy posłużyć się operacją "lub" - czyli operatorem '''&'''. Wygląda to analogicznie do posługiwania się operatorem lub:
{{TODO|dokończyć}}
 
unsigned char i = 3; /* bitowo: ''00000011'' */
unsigned char temp = 0;
temp = i & 1; /* sprawdzamy najmniej znaczący bit - czyli pierwszy z prawej */
if (temp) {
printf ("bit zapalony");
else {
printf ("bit zgaszony");
}
 
Zauważ, że nie musimy tutaj przesuwać bitów - nasz bit znajduje się od razu na ostatniej pozycji.
 
[[en:Programming:C_common_practices]]