Als «bit-shift» getaggte Fragen

Eine Bitverschiebungsoperation verschiebt die in einer Binärzahl oder einem Bitmuster enthaltenen Bits nach links oder rechts.


3
Was ist der >>> = Operator in C?
Von einem Kollegen als Puzzle gegeben, kann ich nicht herausfinden, wie dieses C-Programm tatsächlich kompiliert und ausgeführt wird. Was ist dieser >>>=Operator und das seltsame 1P1Literal? Ich habe in Clang und GCC getestet. Es gibt keine Warnungen und die Ausgabe ist "???" #include <stdio.h> int main() { int a[2]={ 10, …

19
Ist die Multiplikation und Division mit Schichtoperatoren in C tatsächlich schneller?
Multiplikation und Division können beispielsweise mit Bitoperatoren erreicht werden i*2 = i<<1 i*3 = (i<<1) + i; i*10 = (i<<3) + (i<<1) und so weiter. Ist es tatsächlich schneller, say (i<<3)+(i<<1)zu verwenden, um mit 10 zu multiplizieren, als i*10direkt zu verwenden? Gibt es irgendeine Art von Eingabe, die auf diese …

9
Wie druckt dieser "Hallo Welt"?
Ich habe diese Kuriosität entdeckt: for (long l = 4946144450195624l; l > 0; l >>= 5) System.out.print((char) (((l & 31 | 64) % 95) + 32)); Ausgabe: hello world Wie funktioniert das?
163 java  string  bit-shift 






5
Bitweise Operatoren und "Endianness"
Ist Endianness bei den bitweisen Operationen überhaupt wichtig? Entweder logisch oder wechselnd? Ich arbeite an Hausaufgaben in Bezug auf bitweise Operatoren, und ich kann weder Kopf noch Zahl darauf machen, und ich denke, ich bin ziemlich auf die Endianess fixiert. Das heißt, ich benutze eine kleine Endian-Maschine (wie die meisten), …

3
Warum entspricht 11010100 << 1 110101000, nicht 10101000?
Warum, wenn ich versuche, Bits für 11010100 2 zu verschieben , ist das Ergebnis 110101000 2 , nicht 10101000 2 . int a = Integer.parseInt("11010100", 2) &lt;&lt; 1; Ich versuche das zu tun: int a = (byte)(Integer.parseInt("11010100", 2) &lt;&lt; 1); Wenn der Ausgabewert jedoch größer als 128 ist, geht alles …
40 java  bit-shift 
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.