W przypadku ORa nie zanegowałbyś bitu o wartości 1:
0101 OR 0001 = 0101 0101 XOR 0001 = 0100 0101 AND 0001 = 0001
Wynik XORa dwóch bitów daje 1, jeśli bity są różne, 0 gdy są takie same. Wynik ORa dwóch bitów da prawidłowy wynik, gdy będziemy chcieli zanegować bit na pozycji, gdzie występuje 0, jednak jeżeli będzie stała tam 1, to wynik będzie błędny (1 będzie ciągle 1). AND z kolei "skopiuje" nam te bity w wyjściowego słowa tam, gdzie w masce będzie 1. Same wartości bitów przekopiowanych pozostaną bez zmian.
Rozumiem, że dodaje w tym miejscu bit, który bit chce zmienić czyli naprzykład jak chce zmienic prawy od końca to:
0 0 1 1 1 0 0 1 0 0 XOR 0 0 0 1 1 =
93,436 zapytań
142,431 odpowiedzi
322,669 komentarzy
62,801 pasjonatów
Motyw:
Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡
Oto polecana książka warta uwagi.Pełną listę książek znajdziesz tutaj