Bits und Bytes – das Geheimnis der Codes

In Bits und Bytes – das Geheimnis der Codes erfahren Sie, wie alles Digitale im Prinzip aufgebaut ist.

Stand 24.02.2022 (Erste Version vom 13.06.2012)

Darstellung von Daten (Messgrößen)

Daten sind von Grundsatz her Messgrößen. Die Tatsache, dass die häufigsten Daten, mit denen Sie es zu tun haben, Texte und Buchstaben sind, ändert daran nichts. Buchstaben sind dann eben spezielle Messgrößen.

Die Anschaulichkeit des Begriffes der Messgröße erleichtert es, den Unterschied zwischen analog und digital zu verstehen.

analog

Bei einer analogen Darstellung wird der Wert einer Messgröße durch eine kontinuierlich veränderbare physikalische Eigenschaft dargestellt. Am besten ist dies durch ein Beispiel zu verdeutlichen: Die Temperatur oder der Luftdruck wird analog über die Höhe einer Quecksilbersäule angezeigt. Ein weiteres Beispiel ist ein Hygrometer (Luftfeuchtemesser). Ein Hygrometer besteht aus einem an einem Pferdehaar befestigten Zeiger. Das Pferdehaar ändert seine Länge mit der Luftfeuchtigkeit, und mit Hilfe des Zeigers und einer Skala können Sie diese ablesen.

Die Anzeige kann jeden beliebigen Zwischenwert annehmen, es gibt keine Rasterung für die Messwerte.

Das Gleiche gilt auch für Musik, die physikalisch und ganz unprosaisch betrachtet nichts anderes ist als eine zeitliche Abfolge von Luftdruckschwankungen.

Wollten Sie nun diese analogen Werten in den Computer bringen oder Datenkommunikation betreiben, müssen Sie den Zeigerausschlag in eine Spannung verwandeln und diese dann in  diskrete Stufen umwandeln und digitalisieren.

digital

Bei einer digitalen Darstellungsform stellt sich eine Messgröße durch vereinbarte Symbole dar. Jedes verwendete Symbol hat einen Wert, so zum Beispiel die dezimalen Zahlen 0 bis 9 oder die binären Werte 0 und 1. Die Summe der Symbole ergibt den darzustellenden Gesamtwert. Es ist möglich, auch Kombinationen der vereinbarten Symbole bestimmte Werte zuzuordnen. Entscheidend ist, dass nicht die Größe eines Symbols den Wert angibt, sondern das Symbol selbst.

Codierung

Sowohl bei der analogen wie bei der digitalen Darstellungsform kommen Sie bei großen Messwerten in Schwierigkeiten, da man weder die Länge eines Maßstabes noch die Zahl der Symbole beliebig groß machen kann. Eine analoge Darstellung ist daher stets nur innerhalb gewisser Grenzwerte möglich. Die digitale Darstellungsform hat den Vorteil, dass man durch Vereinbarungen über die Kombination der Grundelemente praktisch beliebig große Messwerte (allerdings diskret, also in einem Raster liegend) darstellen kann.

Wesentlich ist noch die Anzahl der möglichen unterschiedlichen Symbole. Während Sie beim Kaufmann in der Regel mit den Symbolen 0 bis 9 rechnen, operieren Computer am liebsten mit nur zwei Werten, 0 und 1. Dies führt zu den Begriffen binär, dual, dekadisch, dezimal.

binär

Von einer binären Darstellung von Daten oder Messwerten spricht man, wenn für die Darstellung zwei verschiedene Symbole verwendet werden. Dementsprechend benötigen Sie zwei verschiedene  Signalzustände, um die so dargestellten Daten im Computer zu verarbeiten. Tab. 1 gibt einen Überblick über die möglichen technischen Darstellungen von Binärwerten.

Physikalische Größe Binärziffer 0 Binärziffer 1
Magnetisierung (Festplatte) nicht magnetisiert magnetisiert
Frequenz (Tonhöhe) niedrige Frequenz hohe Frequenz
Strom kein Strom Strom
Spannung positiv negativ
Amplitude (Lautstärke) niedrig hoch
Lochstreifen kein Loch gelocht

Tab.1: Physikalische Darstellung von Binärwerten

dekadisch

Von einer dekadischen Darstellung von Daten oder Messwerten spricht man, wenn für die Darstellung zehn verschiedene Symbole verwendet werden.

Das System, das Sie beim Kaufmann verwenden, also die Zahlen von 0 bis 9, ist dekadisch.

Bedeutung der Anordnung der Symbole

Binär bzw. dekadisch heißt zunächst nur, dass das digitale Darstellungssystem von Messgrößen zwei bzw. zehn Grundelemente umfasst. Die Stellung der Ziffern hat ebenfalls eine Bedeutung. Nur mit den Symbolen alleine könnten Sie sonst Daten mit einer großen Spannweite nicht darstellen.

Dies führt zu den Begriffen dual bzw. dezimal

Hinter den Bezeichnungen dual und dezimal versteckt sich die Vereinbarung, dass der Wert eines Grundelementes je nach Stellung (von rechts nach links) mit einem bestimmten Faktor multipliziert wird. Der Gesamtwert der dargestellten Messgröße ist die Summe der Werte der Grundelemente multipliziert mit dem jeweiligen Stellungswert; d.h. die Messgröße wird in Ziffern dargestellt.

Dezimalsystem

Das Dezimalsystem kennen Sie bereits aus dem Kindergarten. Die Symbole werden von rechts nach links jeweils mit der nächsten höheren Potenz von 10 multipliziert. Dabei ist 100 als 1 definiert. Allgemein ist irgendwas0 immer als 1 definiert.

Ein Beispiel:

4735 = 3*1000+7*100+3*10+5*1 = 3*103 +7*102+3*101+5*100

Dualsystem

Das Dualsystem funktioniert im Prinzip genauso wie das Dezimalsystem. Die Symbole werden von rechts nach links jeweils mit der nächsten höheren Potenz von 2 multipliziert.

Ein Beispiel:

11001 = 1*24+1*23+0*22+1*101+1*20 = 1*16+1*8+0*4+1*2+1*1=27

Dabei ist 22=2*2, 23=2*2*2 usw.

20 ist definitionsgemäß gleich 1.

Computer arbeiten überwiegend digital-binär.

Binäre Codierung von Buchstaben

Es sind nicht nur Zahlen, sondern auch Buchstaben und Sonderzeichen zu berücksichtigen. Die zunächst für „nackte Messwerte“ geprägten Begriffe binär, dual, dezimal usw. werden einfach auch auf Buchstaben und Sonderzeichen übertragen, d. h. jedem Zeichen wird eine Zahl (ein Wert) zugeordnet und mit einer vorgegebenen Anzahl von Binärziffern (=Codeelemente) codiert.

Zeichen (= Zahlen, Buchstaben, Sonderzeichen) werden aus einer festgelegten Anzahl von Codeelementen gebildet. Die Codeelemente werden in definierter Weise zu Zeichen gruppiert und bilden einen endlichen Zeichenvorrat.

Bei der Datenübertragung werden binäre (zweiwertige) Codeelemente bevorzugt. Jedem Signalzustand entspricht eine Bitkombination aus binären Codeelementen.

Bits und Bytes

Begriffe

Bit:
Zur Kennzeichnung der binären Codeelemente wurde das Kunstwort Bit (binary digit , Binärziffer) eingeführt. Ein Bit unterscheidet zwei Zustände (ja-nein, 1-0, hoch-niedrig) und ist die kleinstmögliche Informationseinheit, die man überhaupt finden kann.

Code:
Eine Vorschrift für die eindeutige Zuordnung der Zeichen eines Zeichenvorrats zu derjenigen eines anderen Zeichenvorrats heißt Code.

Byte:
Die Zusammenfassung von 8 Bit (ein auch sogenanntes Oktet) hat eine besondere Bedeutung in der Datenverarbeitung. Daher hat man dem 8-Bit-Wort die Bezeichnung Byte spendiert.

Verschiedene Codes

Informationen in Computern müssen in einem vereinbarten Code niedergelegt werden. Besonders wichtig ist das auch für die Datenkommunikation, weil Computer nur Nachrichten austauschen können, wenn sie den gleichen Code verwenden.

Unter einem Code versteht man eine Vorschrift für die eindeutige Zuordnung der Zeichen eines Zeichenvorrats (etwa Zahlen und Buchstaben) zu denjenigen eines anderen Zeichenvorrats (z.B. 7 Bit-Darstellungen).

In Datenverarbeitungs-Systemen (und in der Datenkommunikation) sind verschiedene Codes üblich. Die einzelnen Übertagungscodes unterscheiden sich in der Anzahl der Bits und in der Bitstruktur. Die Anzahl der darstellbaren Zeichen eines Codes richtet sich nach der Art und dem Aufbau des Codes.

Bei einem Code mit n binären Codeelementen (n-wertiger-Code) sind maximal 2n Kombinationen möglich. Wird jeder Kombination ein Zeichen zugeordnet, so sind maximal 2n Zeichen möglich.

Mit einem 4-Bit-Code können Sie maximal 16 unterschiedliche Zeichen darstellen. Eine Kette von 4 Bit, also ein halbes Byte, bezeichnet man auch als Nibble.

Mit einem 7-Bit-Code können Sie maximal 128 unterschiedliche Zeichen darstellen.

Mit einem 8-Bit-Code können Sie maximal 256 unterschiedliche Zeichen darstellen. Eine Gruppe von 8 Bit bezeichnet man als Byte.

Codes werden oft in Tabellen dargestellt.

Eine Code-Tabelle in der Datenverarbeitung wird üblicherweise in Form einer Matrix dargestellt, d.h. in Spalten und Zeilen. Die Spalten und Zeilen sind binär nummeriert und ergeben zusammen die binäre Codierung des entsprechenden Matrixelementes. In den Matrixelementen stehen die Zeichen des abzubildenden anderen Zeichenvorrates.

Zwei Codes stelle im Folgenden vor.

ISO-7-Bit-Code (ASCII)

Ein häufig in Rechnern verwendeter Code ist der ISO-7-Bit-Code. Wie die Bezeichnung schon vermuten lässt, hat die ISO (International Standardisation Organisation) diesen Code als Norm aufgenommen unter der Nummer ISO/IEC 646. Der Code trägt auch den Namen ASCII, der DIN hat für diesen Code die Norm DIN 66003 vergeben.

Im ISO-7-Bit-Code sind für alle Zeichen unseres Alphabets und für einige Sonderzeichen (u.a. Steuerzeichen für eine Datenübertragung) 7-Bit-Kombinationen festgelegt. Man untergliedert die Code-Tabelle dementsprechend: Die Steuerzeichen stehen in den Spalten 0 und 1, die Schriftzeichen in den Spalten 2 bis 7 der Code-Tabelle.

Eine bestimmte Anzahl von Bitkombinationen der Schriftzeichen ist reserviert für die Belegung mit nationalen Sonderzeichen z.B. ä, Ö, ü.

Die Zuordnungen finden Sie in Tab.2  Die Kodierung eines Zeichens erhalten Sie dadurch, dass Sie den Zeilenwert hinter den Spaltenwert schreiben, z. B. ‚A‘ = 100 0001 (binär) = 41 hexadezimal. Hexadezimal ist ein weiterer in der Computerei verbreiteter Code: statt Zahlen von 0 bis 9 oder Bits von 0 bis 1 werden die Symbole von 0 bis F verwendet. Dieser Symbolvorrat hat somit 16 Elemente.

Binär=
hexadezimal
000=0 001=1 010=2 011=3 100=4 101=5 110=6 111=7
0000=0 NUL DLE 0 @ P ` p
0001=1 SOH DC1 ! 1 A Q a q
0010=2 STX DC2 2 B R b r
0011=3 ETX DC3 # 3 C S c s
0100=4 EOT DC4 $ 4 D T d t
0101=5 ENQ NAK % 5 E U e u
0110=6 ACK SYN & 6 F V f v
0111=7 BEL ETB 7 G W g w
1000=8 BS CAN ( 8 H X h x
1001=9 HT EM ) 9 I Y i y
1010=A LF SUB * : J Z j z
1011=B VT ESC + ; K [ k {
1100=C FF FS , < L \ l |
1101=D CR GS = M ] m }
1110=E SO RS . > N ^ n ~
1111=F SI US / ? O _ o DEL

Tab. 2: ISO 7 Bit Code

Die Bedeutung der folgend aufgelisteten Steuerzeichen soll hier nicht erläutert werden – diese erschließt sich erst bei einer näheren Betrachtung der Datenkommunikation. Zur Vollständigkeit seien sie jedoch hier aufgelistet (Tab. 3)

Zeichen Bedeutung
ACK acknowledge – positive Rückmeldung
BEL bell – Klingel
BS backspace –  Rückwärtschritt
CAN cancel – ungültig, Abbruch
CR carriage return  – Wagenrücklauf
DCi device control i – Gerätesteuerung i
DEL delete – löschen, Entfernen
DLE data link escape – Datenübertragungsumschaltung
EM end of medium – Ende der Aufzeichnung
ENQ enquiry – Stationsaufforderung, Anfrage
EOT end of transmission – Ende der Übertragung
ESC escape – Umschaltung
ETB end of transmission block – Ende des Datenübertragungsblocks
ETX end of text – Ende des Textes
FF form feed -Formularvorschub
FS file seperator – Hauptgruppentrenner
GS group seperator – Gruppentrenner
HT horizontal tabulation – Horizontaltabulator
LC lower case – untere Stellung, Kleinbuchstaben
LF line feed – Zeilenvorschub
NAK negative acknowlegde – negative Rückmeldung
NL new line – neue Zeile
NUL nil – Null (Füllzeichen ohne Einfluß auf Zeicheninhalt)
RS record seperator – Untergruppentrenner
SI shift in – Rückschaltung in Standardcode
SO shift out – Dauerumschaltung in andere Codetabellen
SOH start of heading – Anfang des Kopfes
STX Start of text – Anfang den Textes
SUB substitution – Austausch eines Zeichens
SYN synchronous idle – Synchronisationslauf
UC upper case – obere Stellung, Großbuchstaben
US unit seperator – Teilgruppentrenner
VT vertical tabulation – Vertikaltabulator

Tab. 3: Liste der Steuerzeichen aus dem ISO 7 Bit Code

8-Bit-Codes

Für die Darstellung im Computer gibt es einige verbreitete 8-Bit-Codes. Mit 8 Bit können Sie 256 verschiedene Zeichen codieren. Daraus ersehen Sie schon, dass es Schwierigkeiten bei der Umsetzung von einem Code in den anderen geben wird. Tatsächlich sind diese Code-Inkompatibilitäten ein Hemmschuh für den ungestörten Datenaustausch zwischen Rechnersystemen.

  • Der EBCDIC (Extended Binary Coded Decimal Interchange Code) ist eine Erfindung der Firma IBM und ist insbesondere auf deren Mainframes zu finden. Aber auch auf Siemens BS2000-Großanlagen wird dieser Code eingesetzt. Die IBM hat diesen Code durch die ISO normen lassen.
  • Der IBM-PC-Code ist eine Erweiterung des ISO-7-Bit-Codes auf 8 Bit für nationale Buchstaben und zusätzliche Sonderzeichen. Dieser Code ist nicht genormt.
  • Der ANSI-PC-Code ist eine genormte Erweiterung des ISO-7-Bit-Codes auf 8 Bit für nationale Buchstaben und zusätzliche Sonderzeichen. Dieser Code hat insofern für PC-Anwendungen eine Bedeutung, da er praktisch der Standard-Windows-Zeichencode ist.

Warum sind Bits und Bytes spannend?

1980

Es gab Großrechner, dazu gab es Terminals, die mit einer direkten Datenleitung (1200 Bit/s) angebunden waren. Ein LAN-Kabel schfft heute die millionenfache Menge, trotzdem hat das gut funktioniert. Auf den Datenleitungen lief ein (Sicherungs-)Protokoll mit Namen LU2. Wenn man direkt Anwendugen auf diesen Datenstrom schreiben wollte, war es erforderlich zu wissen, mit welchen Bits was codiert war.

2022 – nur 42 Jahre später

42 ist eine wichtige Zahl. Aber ich werde Ihnen hier nicht verraten, warum. Und: seit 1980 sind 42 Jahre vergangen. Was haben wir heute:

  • Klickibunti Anwendungen auf einem Betriebssystem, das selbst die Entwickler nicht mehr verstehen.
  • GigaBit WLAN und LTE, um noch schneller dauernd weinende Heldinnen in Serien anschauen zu können (ein Klingone ist ein Klingone ist ein ..)
  • Instagram mit Terabytes an Bildern, bei denen es nicht interessiert, in welcher Reihenfolde die Bits angeordnet sind.
  • Internet of Things mit TTN (LoRaWAN) mit 53 Byte alle 103 Minuten, das entspricht einer Bitrate von  0,07 Bit pro Sekunde. Für Smart Cities. Für Industrie 4.0.

Und letzteres heißt: Sie denken wieder über jedes Bit nach, ob Sie es nicht einsparen können, und kramen eine Programmiersprache (C von 1974!) von 1973 hervor, die damit gut umgehen kann.

Be Welcome, Brave New World.

Quellen zu Bits und Bytes

Brell, Claus (2002) Der PC im Netz. Polding. bei Amazon. Achtung: das Buch ist 20 Jahre alt. Da haben wir Computer noch mit Koax-Kabeln vernetzt… Im Darknet bekommen Sie das Buch bestimmt umsonst als PDF.

Übersicht über alle meine Artikel zur Wirtschaftsinformatik

 

Teile diesen Beitrag.