bit-shift
Czym są operatory bitowe przesunięcia (bit-shift) i jak działają?
Próbowałem nauczyć się C w wolnym czasie, i innych języków (C#, Java, itp.) mają tę samą koncepcję (i często te same operator ... co gotchas czają się za zakrętem? Innymi słowy, absolutny przewodnik dla początkujących do zmiany bitu w całej jego dobroci.
Co to jest operator > = w C?
Podane przez kolegę jako zagadka, nie mogę zrozumieć, jak ten program C faktycznie kompiluje i działa. Co to jest operator &g ...
int a[2]={ 10, 1 };
while( a[ 0xFULL?'\0':-1:>>>=a<:!!0X.1P1 ] )
printf("?");
return 0;
}
Jak to drukuje "hello world"?
Odkryłem tę dziwność:
for (long l = 4946144450195624l; l > 0; l >>= 5)
System.out.print((char) (((l & 31 | 64) % 95) + 32));
Wyjście:
hello world
Jak to działa?
Co to jest operator JavaScript> i jak go używać?
Patrzyłem na kod z Mozilli, który dodaje metodę filtrowania do tablicy i miał wiersz kodu, który mnie zdezorientował.
var len = this.length >>> 0;
Nigdy wcześniej nie widziałem >>> używanego w JavaScript. Co to jest i co robi?
Czy mnożenie i dzielenie za pomocą operatorów zmiany w C jest rzeczywiście szybsze?
Mnożenie i dzielenie można osiągnąć za pomocą operatorów bitowych, na przykład
i*2 = i<<1
i*3 = (i<<1) + i;
i*1 ... y pomnożyć przez 10 niż użyć i*10 bezpośrednio? Czy jest jakiś wkład, którego nie da się w ten sposób pomnożyć lub podzielić?
Jak działają operatorzy zmian w Javie? [duplikat]
To pytanie ma już odpowiedź tutaj:
czym są operatory bitowe przesunięcia (bit-shift) i jak działają?
... 0000
100000000000000000000000
100
10000000000000
1000000000000000000000000
Czy ktoś mógłby to wyjaśnić?
Czy operatory zmiany ( < < ,) są arytmetyczne czy logiczne w C?
W C, są operatorami zmiany (<<, >>) arytmetyka czy logika?
Czy kiedykolwiek musiałeś używać bit shiftingu w prawdziwych projektach?
Czy kiedykolwiek musiałeś używać bit shifting w prawdziwych projektach programistycznych? Większość (jeśli nie wszystkie) języków wysokiego poziomu ma w sobie operatory zmiany, ale kiedy rzeczywiście trzeba by z nich korzystać?
Co oznaczają dwa nawiasy kątowe "<<" w C#?
W zasadzie pytania w tytule. Patrzę na kod źródłowy MVC 2:
[Flags]
public enum HttpVerbs {
Get = 1 << 0,
Post ... Put = 1 << 2,
Delete = 1 << 3,
Head = 1 << 4
}
A ja jestem ciekaw, co robią dwa lewe Kątowniki.
Operatory bitowe i " endianess"
Czy endianness ma w ogóle znaczenie przy operacjach bitowych? Albo Logiczne czy przesunięcie?
Pracuję nad pracą domową w ... n maszyny (jak większość są), ale czy to musi być brane pod uwagę, czy jest to zmarnowany fakt?
W razie potrzeby używam C.
Dlaczego lewy bit-shift,"<<", dla 32-bitowych liczb całkowitych nie działa zgodnie z oczekiwaniami, gdy jest używany więcej niż 32 razy?
Kiedy piszę poniższy program i używam kompilatora GNU C++, wyjściem jest 1, co moim zdaniem wynika z operacji rotacji wykonyw ... eśli przepełniają szerokość bitów, wyjście powinno wynosić 0. Co się dzieje?
Kod jest na ideone, http://ideone.com/VPTwj .
C get nth byte of integer
Wiem, że możesz uzyskać pierwszy bajt używając
int x = number & ((1<<8)-1);
Lub
int x = number & 0xFF;
... o 32bitowa liczba całkowita
Jak mogę zdobyć te wszystkie bajty? pierwszy będzie 210, drugi będzie 4, a dwa ostatnie będzie 0.
Co robi i 0xFF?
W następującym kodzie:
short = ((byte2 << 8) | (byte1 & 0xFF))
Jaki jest cel &0xFF?
Bo inne widze to napisane jako:
short = ((byte2 << 8) | byte1)
I to też działa dobrze?
Java" Bit Shifting " Tutorial? [zamknięte]
Zamknięte. to pytanie nie spełnia wytycznych dotyczących przepełnienia stosu . Obecnie nie przyjmuje odpowiedzi.
... na myśli (ale szukam tutoriala, który wyjaśni każdą możliwą operację): {]}
byte b = (byte)(l >> (8 - i << 3));
Razy dwa szybciej niż bit shift?
Patrzyłem na źródło sorted_containers i byłem zaskoczony widząc ten wiersz :
self._load, self._twice, self._half = load, ... a ze względu na kompletność, oto przykładowe ilustracje dla większych x, gdy optymalizacje mnożenia nie mają zastosowania.
Java: sprawdzanie czy bit jest 0 Czy 1 w długim
Jakiej metody użyłbyś do określenia, czy bit reprezentujący 2^x jest 1 Czy 0 ?
Po co używać operatora Bitwise-Shift dla wartości w definicji C enum?
Apple czasami używa operatora przesunięcia bitowego w swoich definicjach enum . Na przykład w CGDirectDisplay.h Plik będący ...
typedef uint32_t CGDisplayChangeSummaryFlags;
Dlaczego po prostu nie użyć inkrementacji int ' s jak w "normalnym" enum?
Potrzebujesz pomocy w zrozumieniu metody "getbits ()" w rozdziale 2 K & R C
W rozdziale 2, sekcja o operatorach bitowych (sekcja 2.9), mam problem ze zrozumieniem, jak działa jedna z przykładowych meto ... . (Co zweryfikowałem, zarówno kodem jak i Sprawdzam wyniki za pomocą calc.exe -- dzięki Bogu ma widok binarny!)
Jakaś pomoc?
Java: przesunięcie w prawo na liczbę ujemną
Jestem bardzo zdezorientowany w prawej operacji zmiany liczby ujemnej, oto kod.
int n = -15;
System.out.println(Integer.toBi ... 111111111111111110001
11111111111111111111111111111111
Dlaczego prawo przesunięcie liczby ujemnej o 31 a nie 1 (bit znaku)?
Prawe przesunięcie liczb ujemnych w C
Mam kod C, w którym wykonuję następujące czynności.
int nPosVal = +0xFFFF; // + Added for ease of understanding
int nNegVa ... 535 >> 1 = (int) -32767.5 = -32768
To znaczy -32767.5 jest zaokrąglane do -32768.
Czy to zrozumienie jest poprawne?
- 1
- 2