Binärsystem – Hexadezimalsystem

Binärsystem – Hexadezimalsystem

Da Computer Daten nur binär darstellen können sind in der Informatik das binäre Zahlensystem und das hexadezimale Zahlensystem, welches als kompakte Kurzschreibweise des ersteren verwendet wird, von großer Bedeutung.


Inhalt:

  • Das dezimale Zahlensystem
  • Das binäre Zahlensystem
  • Das hexadezimale Zahlensystem
  • Umrechnung zwischen dezimalen und binären Zahlen
  • Bits und Bytes
  • Hexadezimale Zahlen als kompakte Schreibweise binärer Zahlen
  • Rechnen mit binären Zahlen

Das dezimale Zahlensystem

Aus dem Alltag ist uns das dezimale Zahlensystem geläufig, wobei uns die Bezeichnung der Stellenwerte mit E, Z, H, T, … bzw. Einer-Stelle, Zehner-Stellen, Hunderter-Stelle, Tausender-Stelle, … sicher noch aus dem Mathematik-Unterricht in Erinnerung ist.

10er System – Dezimales oder dekadisches Zahlensystem

Basis: 10

10 Ziffern: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

Stellenwerte: Potenzen von 10
also 1, 10, 100, 1000, 10000, … oder 100, 101, 102, 103, 104, 105, …

Der Bezeichnung Stellenwert ist wortwörtlich zu nehmen, d.h. die Ziffer an jeder Stelle trägt zum Gesamtwert der Zahl entsprechend mehr bei.

Dieses Stellenwertsystem lässt sich nun auf andere Basen übertragen.

Das binäre Zahlensystem

Computer oder alle digital arbeitenden Geräte verwenden immer zwei unterschiedliche physikalische Zustände, die als die Werte 0 oder 1 interpretiert werden.

  • Strom aus / Strom ein
  • Spannung liegt nicht an / Spannung liegt an – LOW / HIGH – L / H (z.B. Datenleitung)
  • Kondensator geladen / Kondensator nicht geladen (z.B. Arbeitsspeicher)
  • Magnetisierung bleibt gleich / Magnetisierung ändert sich (z.B. Festplatte)

Darauf aufbauend werden alle Daten in binärer Form dargestellt.

2er System – Binärsystem oder duales Zahlensystem

Basis: 2

2 Ziffern: 0 und 1

Stellenwerte: Potenzen von 2
also 1, 2, 4, 8, 16, 32, … oder 20, 21, 22, 23, 24, 25, …

Der (dezimale) Wert einer Zahl lässt sich analog zum dekadischen Zahlensystem unter Berücksichtigung des entsprechenden Stellenwertes berechnen.

Weitere Beispiele zur Umrechnung der Zahlen zwischen 2er- und 10er-System besprechen wir weiter unten.

Um binäre Zahlen von Zahlen anderer System zu unterscheiden, gibt es unterschiedliche Konventionen, um diese zu kennzeichnen:

10011b = (10011)2 = 0b00010011

Die erste mit einem angehängten „b“ ist die auf dieser Seite verwendete Kurznotation, die zweite wird von Mathematiker präferiert und die dritte ist eine Schreibweise, die in manchen Programmiersprachen verwendet wird, wobei der binäre Zahl „0b“ vorangestellt wird und danach mit 8 Stellen der Zahl mit führenden Nullen angeschrieben werden.

Das hexadezimale Zahlensystem

Bei den landläufig als Hex-Code bezeichneten Zeichenfolgen handelt es sich um Zahlen, die der Programmierer gerne als kompakte Schreibweise für binäre Zahlen verwendet. Wie wir später noch sehen werden, können 4 binäre Stellen in einer hexadezimalen Stelle zusammengefasst werden.

Da wir für dieses sogenannte 16er-System 16 Ziffern benötigen, hat man zusätzlich zu den 10 herkömmlichen Ziffern die ersten 6 Buchstaben des Alphabets gewählt

16er-System – Hexadezimalsystem

Basis: 16

16 Ziffern: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

Stellenwerte: Potenzen von 16
also 1, 16, 256, 4096, … oder , 160, 161, 162, 163, …

Die hinzukommenden Ziffern haben folgende dezimale Entsprechungen:
A …10,   B … 11,   C … 12,   D … 13,   E … 14,   F … 15

Auch hier läuft die Berechnung des dezimalen Wertes nach dem selben Schema.

Zur Unterscheidung hier wieder die drei unterschiediche Möglichkeiten zur Notation hexadezimaler Zahlen, wobei die erste mit einem angehängten „h“ die von mir gerne verwendete Kurzschreibweise ist, die zweite die mathematische und die dritte mit vorangestelltem „0x“ die programmiertechnische Schreibweise ist.

E7h = (E7)16 = 0xE7

Umrechnung zwischen dezimalen und binären Zahlen

Für den Umgang mit binären Zahlen ist es Wissen hilfreich, die Potenzen von zwei zu kennen, zumindest bis 28. Auch die Vorgänger der Zweierpotenzen sind manchmal wichtig.

Wir beschränken uns hier vorerst auf ganze Zahlen.

Umrechnung binär nach dezimal

Im Prinzip wurde die Umrechnung einer binären Zahl in eine dezimale oben schon besprochen. Bei der praktischen Vorgangsweise genügt es, einfache jene Zweierpotenzen zu addieren, an deren Stelle eine 1 steht.

Umrechnung dezimal nach binär

Methode 1

Bei der ersten Möglichkeit, eine dezimale Zahl in seine binäre Darstellung umzuwandeln, wird genau das umgekehrte durchgeführt, nämlich es werden alle möglichen Zweierpotenzen subtrahiert.

Im ersten Schritt sucht man die höchste Zweierpotenz, die sich von der Zahl subtrahieren lässt, ohne negativ zu werden. Daraus lässt sich außerdem gleich die Anzahl der Stellen des Ergebnisses ermitteln. In weiterer Folge geht man alle weiteren Zweierpotenzen hinunter bis zur Eins durch, bis das Ergebnis 0 ist. An den Stellen der beteiligen Zweierpotenzen wird eine 1 gesetzt, an den anderen eine 0.

Methode 2

Hier wird dividiert, und zwar mit Rest. Ausgehend von der dezimalen Zahl wird solange durch 2 dividiert, bis das Ergebnis 0 ist. Die entstehende Reste, die nur die Wert 0 und 1 annehmen können, stellen mit der Einerstelle beginnend die Ziffern der binären Zahl dar.

Welche dieser beiden Methoden man wählt ist Geschmacksache. Die zweite Methode lässt sich vielleicht als Algorithmus in einem Programm besser umsetzen.

Bits und Bytes

Wie schon oben beschrieben werden die 0 und die 1 durch physikalische Zustände repräsentiert. Ein Speicherstelle, die entweder eine 0 oder eine 1 darstellen kann, enthält 1 bit an Information. Ein Bit ist die kleinste mögliche Informationseinheit, die gespeichert oder übertragen werden kann. Übrigens ist das Wort Bit eine Kombination aus den englischen Wörtern „binary“ und „digit“, also „binäre Stelle“, da ein Bit eben einer Stelle einer binären Zahl entspricht. Während das Wort Bit groß geschrieben wird, wird die Einheit bit kleingeschrieben.

In Computersystemen werden dann acht Bit zu einem Byte, kurz 8 bit = 1 B. Im Arbeitsspeicher oder in anderen Speichersystem sind deshalb immer 8 Speicherstellen zu 1 Byte zusammengefasst. Größere Speicherbereiche sind dann immer Vielfache von einem Byte. Als Einheit wird ein Byte mit B abgekürzt.

Hexadezimale Zahlen als kompakte Schreibweise binärer Zahlen

Für eine Umrechnung einer Dezimalzahl in eine Hexadezimalzahl könnte man analog zur Methode 2 bei der Umrechnung in binäre Zahlen vorgehen, indem man mehrmalig durch  16 mit den Resten dividiert und letztere in  umgekehrter Reihenfolge als Ziffern der hexadezimalen Zahl anschreibt. Da man es im Computerbereich meist nur mit 2 hexadezimalen Stellen zu tun hat, genügt sogar nur eine Division durch 16, wobei das ganzzahlige Ergebnis der Division die zweite Stelle, die 16er-Stelle, darstellt und der Rest die Einerstelle.

Für die Informatik ist dies aber gar nicht so wichtig. Eigentlich stellen hexadezimale Zahlen einfach nur eine kompakte Kurzschreibweise für binäre Zahlen dar. Statt vier Stellen einer binären Zahl reicht eine hexadezimale Stelle. Darum sollte man die rasche Umwandlung einer binären Zahl in eine hexadezimale beherrschen und umgekehrt, wobei immer ein Viererblock an Bits einzeln als hexadezimale Ziffer dargestellt wird.

Auf Zahlen der Speichergröße 1 Byte angewendet:

 

 

Rechnen mit binären Zahlen

 

 

Dieser Beitrag wurde unter Informatik veröffentlicht. Setze ein Lesezeichen auf den Permalink.