Binärsystem es ist eines der grundlegendsten und wichtigsten in der Informatik. Es basiert auf der Verwendung von nur zwei Zeichen - 0 und 1 -, die die logischen Zustände «falsch» bzw. «wahr» darstellen. In Computersystemen werden Informationen in binärer Form verarbeitet und gespeichert, sodass Maschinen effizient mit den Daten arbeiten können.
Bitoperationen ist eine Möglichkeit, binäre Daten mit logischen Operationen wie bitweise UND (&), bitweise ODER (|), bitweise Ausnahme ODER (^) und bitweise Negation (~) zu manipulieren. Mit diesen Operatoren können Sie verschiedene Operationen auf der Ebene einzelner Bits einer Zahl durchführen.
Die binäre Darstellung einer ganzen positiven Zahl kann durch Bitoperationen abgerufen werden. Um dies zu tun, müssen Sie jedes Bit einer Zahl nacheinander überprüfen und seinen Wert schreiben.
Zunächst wird die ursprüngliche Zahl in ein binäres Zahlensystem konvertiert. Dann erfolgt eine sequentielle Division der Zahl durch 2 und schreibt die Reste in umgekehrter Reihenfolge auf.
- Für die Nummer 10:
- 10 / 2 = 5 (Rest 0)
- 5 / 2 = 2 (Rest 1)
- 2 / 2 = 1 (Rest 0)
- 1 / 2 = 0 (Rest 1)
- Ergebnis: 1010
Merkmale des binären Bezugssystems
1. Nur zwei Zeichen - Im Binärsystem werden nur zwei Zeichen verwendet: 0 und 1. Im Gegensatz zum Dezimalsystem, wo es 10 Ziffern gibt.
2. Einfache Speicherung und Datenübertragung - Ein binäres System eignet sich hervorragend zum Speichern und Übertragen von Daten in elektronischen Geräten. Jedes Bit kann einen von zwei Zuständen darstellen: ein (1) oder aus (0).
3. Bits und Bytes - Die Maßeinheit für Informationen in einem binären System ist ein Bit. Ein Byte besteht aus 8 Bits, wodurch mehr Zahlen und Zeichen dargestellt werden können.
4. Positionsdarstellung - Wie im Dezimalsystem hat jede Position im Binärsystem ein bestimmtes Gewicht. Zum Beispiel hat in der Zahl 101 das erste Bit auf der rechten Seite das Gewicht 1, das zweite Bit das Gewicht 2, das dritte Bit das Gewicht 4 und so weiter.
5. In Dezimalsystem übersetzen - Um mit Zahlen in einem binären System zu arbeiten, können Sie sie in ein Dezimalsystem übersetzen. Um dies zu tun, multiplizieren Sie jede Position der Zahl mit dem entsprechenden Grad der Zwei und addieren Sie die Ergebnisse.
Wie bekomme ich die binäre Darstellung einer Zahl in einer Programmiersprache?
Die binäre Darstellung einer Zahl in einer Programmiersprache kann durch Bitoperationen abgerufen werden. Bitoperationen ermöglichen die Manipulation einzelner Bits einer Zahl, einschließlich ihrer binären Darstellung.
Es gibt mehrere Möglichkeiten, die binäre Darstellung einer Zahl zu erhalten:
- Mit einer Funktion oder Methode:
- Einige Programmiersprachen verfügen über integrierte Funktionen oder Methoden, die eine Zahl in ihre binäre Darstellung konvertieren. In Python können Sie beispielsweise die Funktion bin() verwenden, um dies zu tun.
- Mit Bitoperationen:
- Bitoperationen ermöglichen es Ihnen, eine binäre Darstellung einer Zahl bitweise zu erhalten. Zum Beispiel kann man mit einer bitweisen Verschiebung nach rechts ( >> ) jedes Bit einer Zahl nacheinander abrufen.
- Mit einer Schleife:
- Mit einer Schleife ist es möglich, eine binäre Darstellung einer Zahl schrittweise zu erhalten, wobei bei jeder Iteration das nächste Bit einer Binärzahl berechnet wird. Sie können beispielsweise eine for- oder while-Schleife für diesen Zweck verwenden.
Die Auswahl einer bestimmten Methode hängt von der Programmiersprache und der Syntax ab, die sie bietet. Es ist wichtig sich daran zu erinnern, dass die binäre Darstellung einer Zahl in verschiedenen Formaten dargestellt werden kann, z. B. als String oder als ganze Zahl.
Sie müssen die möglichen Einschränkungen und Besonderheiten der Programmiersprache berücksichtigen, um eine korrekte binäre Darstellung der Zahl zu erhalten.
Bitweise Verschiebung nach links und rechts
Die bitweise Verschiebung nach rechts erfolgt dagegen mit dem Operator >>. Dabei wird jedes Bit einer Zahl um die angegebene Anzahl von Positionen nach rechts verschoben. Wenn Sie beispielsweise die Zahl 20 um zwei Positionen nach rechts verschieben, erhalten Sie die Zahl 5, da sich die Bits der Zahl 20 um zwei Positionen nach rechts verschoben haben.
Die bitweise Verschiebung nach links und rechts wird oft verwendet, um die binäre Darstellung von Zahlen bequem zu manipulieren. Zum Beispiel entspricht eine bitweise Verschiebung nach links um eine Position der Multiplikation einer Zahl mit 2, und eine bitweise Verschiebung nach rechts entspricht der Division einer Zahl durch 2 ohne Rest.
Bitweise UND, ODER, ausschließend ODER und Negation
Es gibt vier bitweise Operatoren: AND (&), OR (|), XOR (^) und NOT (~).
Bitweise Und (AND) führt die Operation "Und" für jedes Bitpaar zweier Zahlen aus. Das Ergebnis der Operation ist eine Zahl, bei der jedes Bit nur dann 1 ist, wenn beide Bits der ursprünglichen Zahlen 1 sind. Andernfalls wird das resultierende Bit 0 sein.
Bitweise ODER (ODER) führt die Operation "ODER" für jedes Bitpaar zweier Zahlen aus. Das Ergebnis der Operation ist eine Zahl, bei der jedes Bit 1 ist, wenn mindestens eines der Bits der ursprünglichen Zahlen 1 ist. Andernfalls wird das resultierende Bit 0 sein.
Bitweise Ausnahme ODER (XOR) führt eine ausschließende ODER-Operation für jedes Bitpaar zweier Zahlen aus. Das Ergebnis der Operation ist eine Zahl, bei der jedes Bit nur dann 1 ist, wenn die Bits der ursprünglichen Zahlen unterschiedlich sind. Andernfalls wird das resultierende Bit 0 sein.
Bitweise Negation (NOT) führt eine Negationsoperation für jedes Bit einer Zahl aus. Das Ergebnis der Operation ist eine Zahl, bei der jedes Bit invertiert wird (0 wird zu 1 und 1 wird zu 0).
Beispiel 1:
for(int i = 31; i >= 0; i--)
Als Ergebnis dieses Codes wird eine binäre Darstellung der Zahl 10 ausgegeben: 000000000000000000000000000000001010.
Beispiel 2:
for(int i = 31; i >= 0; i--)
Dieser Code gibt auch eine binäre Darstellung der Zahl 10 aus: 000000000000000000000000000000001010.
Arbeiten mit negativen Zahlen
Das binäre Zahlensystem verwendet zusätzlichen Code, um mit negativen Zahlen zu arbeiten. Es ermöglicht Ihnen, eine negative Zahl als Bitfolge darzustellen und arithmetische Operationen darüber durchzuführen.
| Zeichen | Zahlenmodul | Zusätzlicher Code |
|---|---|---|
| 0 | 0 | 0 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Um zusätzlichen Code für eine negative Zahl zu erhalten, müssen Sie alle Bits im Zahlenmodul invertieren und 1 hinzufügen.
Die negative Zahl ist -5 gegeben. Sein Modul in der Binärdarstellung ist 0101. Wenn wir seine Bits invertieren, erhalten wir 1010. Wir fügen 1: 1011 hinzu. Wir haben den zusätzlichen Code -5 erhalten.
Bitoperationen mit negativen Zahlen werden ähnlich wie positive ausgeführt. Das Ergebnis der Operation wird auch in zusätzlichem Code angezeigt.
Wie kann ich die Größe einer ganzen Zahl in Bits herausfinden?
In Programmiersprachen können Ganzzahlen durch verschiedene Datentypen dargestellt werden, und jeder Typ kann eine andere Länge in Bits haben. Um die Größe einer ganzen Zahl in Bits zu ermitteln, können Sie einige integrierte Funktionen oder Bitoperationen verwenden.
Eine Möglichkeit, die Größe einer ganzen Zahl in Bits herauszufinden, besteht darin, die Funktion sizeof() zu verwenden. In den meisten Programmiersprachen gibt es die Größe des Datentyps in Bytes zurück. Um die Größe in Bits zu erhalten, können Sie das Ergebnis mit 8 multiplizieren, da ein einzelnes Byte 8 Bits enthält.
In der Programmiersprache C können Sie beispielsweise den folgenden Code verwenden, um die Größe einer ganzen Zahl vom Typ int in Bits zu ermitteln:
#include int main()
Eine andere Möglichkeit, die Größe einer ganzen Zahl in Bits herauszufinden, besteht darin, Bitoperationen zu verwenden. Abhängig von der Programmiersprache können Sie verschiedene Bitoperationen wie Verschiebungen und bitweise logische Operationen verwenden, um die Anzahl der Bits zu bestimmen, die zur Darstellung einer Zahl erforderlich sind.
In der Programmiersprache Java können Sie beispielsweise den Nach-Rechts-Verschiebungsoperator (>>) verwenden, um die Anzahl der Bits zu bestimmen, die zur Darstellung einer ganzen Zahl erforderlich sind:
int num = 255;int bits = 0;while (num != 0) > 1;bits++;>System.out.println("Размер числа в битах: " + bits);
Daher können Sie mit der Funktion sizeof() oder Bitoperationen die Größe einer ganzen Zahl in Bits ermitteln und diese Informationen in Ihren Programmen verwenden.
-
Verwenden Sie die bitweise Nach-Rechts-Verschiebungsoperation, um jedes Bit einer Zahl zu erhalten. Um dies zu tun, können Sie die Zahl durchlaufen und ihre Bits bei jeder Iteration nach rechts verschieben:
int num = 10; // Пример числаwhile (num != 0) >= 1; // Сдвиг числа вправоprintf("%d", bit);>
int num = 10; // Пример числаint count = 0; // Счетчик для добавления пробеловwhile (num != 0) >= 1; // Сдвиг числа вправоprintf("%d", bit);count++;// Добавление пробелов после каждой группы битовif (count % 4 == 0) >