Jak ustawić, wyczyścić i przełączyć
Operatory, które są używane do wykonywania manipulacji na poziomie bitowym Języki programowania są zorientowane na bajty, podczas gdy sprzęt jest zorientowany na bit, dlatego możliwość działania na poziomie bitowym może być bardzo ważna w programowaniu, zwłaszcza gdy program bezpośrednio współdziała ze sprzętem .
Jak ustawić, wyczyścić i przełączyć
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 3 lata temu . Popraw to pytanie...
Zastanawiam się tylko, dlaczego zwykle używamy logicznej OR ||między dwoma logicznymi OR |, a nie bitowymi OR , chociaż oba działają dobrze. Mam na myśli, spójrz na następujące: if(true | true) // pass if(true | false) // pass if(false | true) // pass if(false | false) // no pass if(true ||...
Przeglądając kod źródłowy Guava natrafiłem na następujący fragment kodu (część implementacji hashCodeklasy wewnętrznej CartesianSet): int adjust = size() - 1; for (int i = 0; i < axes.size(); i++) { adjust *= 31; adjust = ~~adjust; // in GWT, we have to deal with integer overflow...
Jestem całkiem nowy w programowaniu w C i napotkałem maskowanie bitów. Czy ktoś może mi wyjaśnić ogólną koncepcję i funkcję maskowania bitów? Przykłady są bardzo
Dlaczego ~ 2 jest równe -3? Jak działa
Zawsze myślałem, że &&operator w Javie służy do sprawdzania, czy oba jego operandy boolowskie są true, a &operator jest używany do wykonywania operacji bitowych na dwóch typach liczb całkowitych. Niedawno dowiedziałem się, że &operator może również służyć do sprawdzania, czy oba...
Próbuję przekonwertować liczbę całkowitą na binarną za pomocą funkcji bin () w Pythonie. Jednak zawsze usuwa wiodące zera, których faktycznie potrzebuję, tak że wynik jest zawsze 8-bitowy: Przykład: bin(1) -> 0b1 # What I would like: bin(1) -> 0b00000001 Czy jest na to...
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć, podając fakty i cytaty, edytując ten post . Zamknięte 10 miesięcy temu . Popraw to...
Jest to więc bardziej teoretyczne pytanie. C ++ i języki (in) bezpośrednio na nim oparte (Java, C #, PHP) mają operatory skrótów do przypisywania wyniku większości operatorów binarnych do pierwszego operandu, takie jak a += 3; // for a = a + 3 a *= 3; // for a = a * 3; a <<= 3; // for a = a...
W dokumentacji firmy Apple dotyczącej interakcji z interfejsami API języka C opisują sposób, w jaki NS_ENUMwyliczenia w stylu C ze znacznikami są importowane jako wyliczenia Swift. Ma to sens, a ponieważ wyliczenia w języku Swift są łatwo dostarczane jako enumtyp wartości, łatwo jest zobaczyć, jak...
Jestem kimś, kto pisze kod tylko dla przyjemności i tak naprawdę nie zagłębiał się w niego ani w środowisku akademickim, ani zawodowym, więc takie rzeczy jak te operatory bitowe naprawdę mi umykają. Czytałem artykuł o JavaScript, który najwyraźniej obsługuje operacje bitowe. Wciąż widzę tę...
Czy ktoś mógłby mi wyjaśnić, jak używać <<i >>w Go? Myślę, że jest podobny do niektórych innych
Operatory bitowe mają przemieszczać zmienne i operować na nich bit po bicie. W przypadku liczb całkowitych, długich i znaków ma to sens. Te zmienne mogą zawierać pełen zakres wartości wymuszonych przez ich rozmiar. Jednak w przypadku logicznych wartości logicznych może zawierać tylko dwie...
W poniższych wierszach: //Folder.Attributes = FileAttributes.Directory | FileAttributes.Hidden | FileAttributes.System | FileAttributes.ReadOnly; Folder.Attributes |= FileAttributes.Directory | FileAttributes.Hidden | FileAttributes.System | FileAttributes.ReadOnly; Folder.Attributes |=...
Znam zasady &&i ||ale jakie są &i |? Proszę wyjaśnij mi to na
Jeśli czytasz komentarze na jQuery inArraystronie tutaj , jest interesująca deklaracja: !!~jQuery.inArray(elm, arr) Teraz uważam, że podwójny wykrzyknik przekonwertuje wynik na typ booleano wartości true. Nie rozumiem, jakie jest zastosowanie w tym ~wszystkim operatora tyldy ( )? var arr =...
Natknąłem się na (pozornie) bardzo dziwny przypadek. Weź liczbę 2 ( 0b10) i zamaskuj ją za pomocą 1 ( 0b01) Powinno to dać 0b00odpowiednik 0. Jednak tutaj pojawia się pan Schrödinger: var_dump(0b10 & 0b01); // int(0) var_dump(0b10 & 0b01 == 0); // int(0) var_dump(0b10 & 0b01 !=...
Czy jest jakiś powód, aby nie używać operatorów bitowych &, | i ^ dla wartości „bool” w C ++? Czasami napotykam sytuacje, w których chcę, aby dokładnie jeden z dwóch warunków był prawdziwy (XOR), więc po prostu wrzucam operator ^ do wyrażenia warunkowego. Czasami chcę również, aby...
Mój kod wygląda tak: TextView task_text = (TextView) view.findViewById(R.id.task_text); task_text.setPaintFlags( task_text.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); Powoduje to pojawienie się efektu przekreślenia w tekście. Chciałbym jednak wiedzieć, jak usunąć ustawioną flagę i jak...