Mathematik-Grundbegriffe für Programmierer

Bit-Verknüpfungen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Verschiedene Programmiersprachen besitzen Bit-Operatoren, die sowohl hardware-nahe Programmierung als auch arithmetische Optimierungen sowie logische Verknüpfungen erlauben. In dem Video lernen Sie das Einerkomplement (bitweise Negation) sowie bitweises ODER, UND und Exklusiv-ODER (XOR) kennen.
05:46

Transkript

In diesem Video betrachten wir bitweise Operationen. Das heißt, Verknüpfung auf Bitebene, die streng auch mit logischen Vergleichen, logischen Operatoren einhergehen. Es gibt beispielsweise das bitweise "und", das bitweise "oder", das exklusive "oder" und auch die Komplementbildung oder Negation Wie sie sich verhält , sehen Sie in diesem Video. Wir beginnen mit dem bitweisen "und". Das bitweise "und" verknüpft alle Bits nach diesen Regeln hier: 0 und 0 ist 0, 0 und 1 ist 0, 1 und 0 ist 0, 1 und 1 ist 1. Betrachten wir ein konkretes Beispiel. Ich habe hier zwei Zahlen. Dezimal die 10 und Dezimal die 12. Wenn man sie binär mit "und" verknüpft, erhält man als Ergebnis die 8, das ergibt sich so: 0 und 0 gibt 0, 1 und 0 gibt 0, 0 und 1 gibt 0, 1 und 1 gibt 1. 0en miteinander verknüpft gibt wieder 0. Und das ist die Repräsentation der 8. Das können wir uns auch mal mit einem konkreten Programm anschauen. Ich habe hier ein kleines Java Programm, wo ich diese beiden Werte in zwei Variablen speichere und diese dann über einen geeigneten Operator für das bitweise "und" verknüpfe. Ich muss hier in diesem Fall noch "casten", weil das Ergebnis der Operation ein "int" ergeben würde, das ist speziell Java jetzt. Aber der Wert wird genau das sein, was wir gerade von Hand uns überlegt haben, nämlich die 8. Kommen wir zum bitweisen "oder". Auch hier müssen wir vier Fälle betrachten. 0 verknüpft mit 0 ist wieder 0, aber wenn 0 oder 1 vorliegt, ist das Ergebnis 1. Wenn 1 oder 0 vorliegt, ist das Ergebnis 1. Wenn 1 oder 1 vorliegt, ist das Ergebnis 1. Wenn sie an Wahrheitswerte denken. Wenn eine der Bedingungen wahr ist, dann ist der gesamte Ausdruck wahr, bei "und" mussten beide Bedingungen wahr sein, das ist der Bezug zu dieser Logik, den Wahrheitswerten. Auch hier wieder ein konkretes Beispiel. Zuerst hier im Rahmen der Präsentation. Die gleichen Zahlen. 0 oder 0 gibt 0, 1 oder 0 gibt 1, 0 oder 1 gibt 1, 1 oder 1 gibt 1, und 0en miteinander verknüpft wieder 0. Das Ergebnis ist die binäre Darstellung, die Dualdarstellung der Zahl dezimal 14. Auch das soll uns ein kleines Java-Programm "beweisen". Hier sehen Sie den bitweisen "oder"-Operator und wenn wir das laufen lassen, dann haben wir die 14 als Ergebnis. Nun gibt es auch den Fall des sogenannten "xor", exklusives "oder". In dem Fall kommt nur dann 1 raus, wenn die Operanden unterschiedlich sind. Da sehen Sie, dass 0 xor 0 = 0 ergibt, und auch 1 xor 1 gibt 0. Nur wenn die beiden sich unterscheiden, haben wir als Resultat dieser Verknüpfung wieder 1. Auf unsere Beispielzahlen bezogen sehen Sie, dass 0 xor 0 = 0 ergibt, 1 xor 0 = 1, 1 xor 0 gibt 1 und 1 xor 1 wieder 0 und das Ergebnis ist dezimal dann 6. Auch hier wieder ein Java-Programm zur Verdeutlichung. Hier haben wir den "xor"-Operator, wir führen das Programm aus und Sie haben den Wert 6. Und dann gibt es noch das bitweise "nicht", beziehungsweise das Einerkomplement oder auch bitweise Negation genannt. Das ist eine einstellige Operation, die im Grunde nur die Bits umdreht. Das heißt, da wo eine 0 war, kommt eine 1 und wo eine 1 war, kommt eine 0 raus. Ein Beispiel: Nehmen wir die Zahl 10 dezimal, die wir bisher auch schon benutzt haben. Hier haben wir die Binärdarstellung und dann wird aus jeder Stelle wo bisher eine 0 steht eine 1 und wo eine 1 steht eine 0. Die Negation wird also durchgeführt und das Ergebnis hier dezimal ist 245. Hier ist wieder das Java-Programm. Sie sehen hier Komplementbildung, bezüglich der Java Syntax und das Ergebnis -11. Nun sollten Sie sich nicht wundern, dass hier in den Java Programm -11 rauskommt, während wir in der Folie 245 gesehen haben. Java arbeitet mit der Spiegelung an der 0, was den Wertebereich angeht und so wird in der normalen Binärdarstellung 245 einfach in Java -11, aber das ist vollkommen äquivalent. Sie haben also in diesem Video gesehen, dass man mit bitweise, mit geeigneten Operatoren der jeweiligen Programmiersprache, Verknüpfungen vornehmen kann, beziehungsweise im Fall des Einerkomplements nur eine Operation mit einem Operanden und die Bits resultieren dann entsprechend der hier gezeigten Regeln.

Mathematik-Grundbegriffe für Programmierer

Lernen Sie die Themenbereiche und Verfahren aus der Mathematik kennen, die bei der täglichen Programmierarbeit zum Einsatz kommen.

2 Std. 54 min (40 Videos)
Derzeit sind keine Feedbacks vorhanden...
Exklusiv für Abo-Kunden
Erscheinungsdatum:03.10.2016
Aktualisiert am:19.12.2016

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!