In meinem bash
Skript habe ich eine Zeichenfolge mit einer hexadezimalen Zahl, z. hex="0x12345678"
. Ist es möglich, es als Hex-Zahl zu behandeln und Bit-Shifting zu machen?Wie werden bitweise Operationen an Hexadezimalzahlen in bash durchgeführt?
8
A
Antwort
7
Sie können ganz einfach solche Zahlen in einem arithmetischen Kontext Bitshift:
$ hex="0x12345678"
$ result=$((hex << 1))
$ printf "Result in hex notation: 0x%x\n" "$result"
0x2468acf0
2
Yes.
Arithmetische Ausdrücke unterstützen Basis 16 Zahlen und alle üblichen C
Operatoren.
Beispiel:
$ hex="0xff"
$ echo $((hex >> 1))
127
7
Natürlich können Sie bitweise Operationen tun (innerhalb einer Arithmetik Erweiterung):
$ echo "$((0x12345678 << 1))"
610839792
Oder:
$ echo "$((16#12345678 << 1))"
610839792
Der Wert könnte in ein gesetzt werden variabel auch:
$ var=0x12345678 # or var=16#12345678
$ echo "$((var << 1))"
610839792
Und Sie können ODER tun, AND und XOR:
$ echo "$((0x123456 | 0x876543))"
9925975
und das Ergebnis in hex zu erhalten, wie gut:
$ printf '%X\n' "$((0x12345678 | 0xDEADBEEF))" # Bitwise OR
DEBDFEFF
$ printf '%X\n' "$((0x12345678 & 0xDEADBEEF))" # Bitwise AND
12241668
$ printf '%X\n' "$((0x12345678^0xDEADBEEF))" # Bitwise XOR
CC99E897
Verwandte Themen
- 1. Bitweise Operationen an Nicht-Zahlen
- 2. BASH: Wie arithmetische Operationen an Zahlen in einer Pipe durchgeführt werden
- 3. Bitweise Operationen
- 4. bitweise Operationen in OCaml
- 5. C++ Qt: bitweise Operationen
- 6. Syntaxfehler bitweise Operationen c
- 7. funky Java bitweise Operationen?
- 8. MySQL bitweise Operationen, Bloom Filter
- 9. Wie ganzheitliche Förderung für bitweise Operationen vermeiden
- 10. Bitweise Operationen in einem Steganographie-Programm (C)
- 11. Bitweise 48-Bit-Operationen in Javascript?
- 12. Bitweise Operationen auf Enum Flag
- 13. Bitweise und arithmetische Operationen in swift
- 14. bitweise Operationen auf Strings in Javascript
- 15. Wie werden die CRUD-Operationen auf der Datentabelle durchgeführt?
- 16. Kann ich bitweise Operationen auf Byte [] ausführen?
- 17. Verständnis bitweise Operationen - Verschiebung und UND
- 18. Golan bitweise Operationen sowie allgemeine Byte-Manipulation
- 19. Bitweise Operationen - was zum Teufel ist los?
- 20. bitweise Operationen mit CGBitmapInfo und CGImageAlphaInfo
- 21. Welche Art von Operationen sollten im Backend durchgeführt werden?
- 22. Bitweise Operationen von Visual Basic zu C#
- 23. Cassandra bitweise Operationen und Operatoren (&, oder, nicht)
- 24. Wie implementieren GPUs (Geforce 9800) bitweise Integer-Operationen?
- 25. bitweise XOR eine Zeichenfolge in Bash
- 26. Wie definiert man x x und bitweise Operationen damit?
- 27. Wie Belastungstests durchgeführt werden
- 28. Wie vergleicht man Hexadezimalzahlen mit Hexadezimalzahlen in der Shell?
- 29. Bit-weise Operationen an ByteString
- 30. Hexadezimalzahlen einer Datei anzeigen