Achtung: Dies ist eine historische Web-Site. Aktuell ist https://rainer.gerhards.net/ (engl) bzw https://www.rainer-gerhards.de/ (deutsch). Alle dynamischen Funktionen, Formulare etc auf dieser Seite sind abgeschaltet.
Datenschutzerklärung Impressum

Astronomy and Space Flight, Astronomie und Raumfahrt und dies und das...

Rechenanlagen - Unäre Zahlendarstellung

rgerhards - 02.11.2008, 11:36 Uhr
Titel: Unäre Zahlendarstellung
Bei der unären Zahlendarstellung gibt es nur ein einziges Ziffernsymbol, beispielsweise die 1. Diese Darstellung ist uns allen beispielsweise von Gastwirtschaften bekannt. Auf dem Bierdeckel wird ein Strich für jedes Bier gemacht. Die Anzahl der Striche ist dabei die darzustellende Zahl (also drei Bier = drei Striche somit ist "III" die Darstellung von 3 im unären System). Es ist zu beachten, dass wir in dem Bierbeispiel nun den Strich als Ziffernsymbol verwendet haben, was natürlich möglich ist. Das unäre System wird daher oft auch als Strichcode bezeichnet.

Technisch rechnen lässt sich mit den Strichen allerdings nicht. Daher wird der Strich zunächst einmal durch das Symbol "1" ersetzt, was dann wieder mit den entsprechenden Wert in der Schaltung ersetzt wird (ich meine 'mal gelesen zu haben, dass das z.B. der Wert 5 Volt bei TTL-Bausteinen ist). Dann bleibt aber noch die Frage, wie man die "mehreren Striche" im technisch repräsentieren kann.

Dazu wird im Skript "Rechenanlagen I" der Fernuniversität Hagen von Hr. Prof. Dr. Keller folgendes definiert:

Prof. Dr. Keller hat folgendes geschrieben::

Formal wird eine n-stellige unäre Darstellung so definiert, dass die von einer Zeichenreihe a_{n - 1}, \ldots, a_0 \in \{0, 1\}^n dargestellte Zahl gerade k \in \{0, \ldots, n - 1\} ist, wenn a_k = 1 und a_j = 0 für j \ne k. Hat die Zeichenreihe eine andere Form (entweder Null oder mehr als ein Bit gesetzt), dann ist die dargestellte Zahl nicht definiert.


In Bezug auf den Strichcode bedeutet das, dass er eben nicht mehr mit mehreren Strichen realisiert, sondern immer nur mit genau einem Strich, und dieser Strich wird an der Stelle gesetzt, der dem Wert der darzustellenden Zahl entspricht.

Der zur Darstellung genutzt Bitvektor wird dabei, von rechts nach links gelesen, mit den Werten 0, 1, 2, \ldots versehen. Die Bitwerte werden also nicht kombiniert, sondern für jedes Bit gibt es genau einen Wert. Daher sind auch alle Repräsentationen, in denen mehr als ein Bit gesetzt wird zwangsläufig ungültig.

Nehmen wir nun einmal eine achtstellige Unärzahl: Sie kann die Werte von 0 bis 7 darstellen (da ja nur 8 Bits vorhanden sind). Die möglichen unär-Zahlen gemäß der oben definierten Maschinenrepräsentation sind damit die folgenden:


\begin{array}{c|c|c}
Zahl & Darstellung & Strichcode\\\hline
0 & 0000 0001 & \\
1 & 0000 0010 & I\\
2 & 0000 0100 & II\\
3 & 0000 1000 & III\\
4 & 0001 0000 & IIII\\
5 & 0010 0000 & IIIII\\
6 & 0100 0000 & IIIIII\\
7 & 1000 0000 & IIIIIII\\
\end{array}

Die Tabelle enthält der Vollständigkeit halber auch den (Bier-)Strichkode, wobei "I" wieder für einen Strich stehen soll.

Wie man ersehen kann ist die Darstellung großer Zahlen sehr aufwändig.
Alle Zeiten sind GMT + 1 Stunde
PNphpBB2 © 2003-2007