Das offizielle Minecraft Wiki twittert hier: Wiki-Twitter  –  Chatte im Wiki-Discord  – Noch keinen Server gefunden? Es gibt einen Wiki-Server

Schaltnetze/Kodierer und Dekodierer (Redstone)

Aus Technik Wiki
Wechseln zu: Navigation, Suche
Gruppe: Grid Redstone-Verstärker.png
Schaltnetze

Grid Roter Sand blass.png mit Mechaniken
                Hier:
Grid Redstone.png mit Redstone

Grid Befehlsblock.png mit Befehlen

Die vorgestellte Technik kann in der Redstone-Welt angesehen werden.

Kodierer und Dekodierer werden paarweise bei der Umwandlung von Signalen eingesetzt. Der Kodierer wandelt das Ausgangssignal in einen anderen Code um, der Dekodierer wandelt es wieder zurück. Diese Bauteile sind also nicht durch die Art der Umwandlung definiert, sondern durch ihre Position in einem Schaltkreis.

Die Kodierung kann z.B. von Binärzahlen zu Dezimalzahlen erfolgen, die Dekodierung zurück zu Binärzahlen. Umgekehrt ist es auch möglich: wenn das Ausgangssignal aus Dezimalzahlen besteht, wäre die Kodierung die Umwandlung in Binärzahlen und die Dekodierung die Wiederherstellung von Dezimalzahlen.

Kodierer[Bearbeiten | Quelltext bearbeiten]

Variante 1[Bearbeiten | Quelltext bearbeiten]

Schaltnetze Kodierer und Dekodierer (Redstone) Animation 1.1.1.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 1.1.2.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 1.1.3.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 1.1.4.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 1.1.5.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 1.1.6.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 1.1.7.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 1.1.8.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 1.1.9.png Schaltnetze Kodierer und Dekodierer (Redstone) Bild 1.1.png Schaltnetze Kodierer und Dekodierer (Redstone) Bild 1.2.png

Der Kodierer besteht aus einer Aneinanderreihung von Und-Gattern, deren Eingänge so negiert sind, dass jede eingegebene Zahl (Eingänge) in einen bestimmten Ausgang ausgegeben werden kann. So steht der rechte Eingang (In der Animation unten rechts) für die binäre 1. Der zweite Eingang steht für die 2, der dritte für die 4 und der vierte für die 8. Je nachdem welche Eingänge man kombiniert, werden unterschiedliche Ausgänge aktiviert. Hierbei steht jeder Ausgang für eine bestimmte Code-Zahl, das heißt in der Animation stellt der linke unterste und erste Ausgang die erste Kodeausgabe dar, die zweite stellt die zweite Kodeausgabe dar und so weiter. So ist es möglich, jede einzelne Leitung als einen bestimmten Code zu deklarieren. Mit vier Eingängen können maximal 15 verschiedene Zahlen kodiert werden. Man kann einen Kodierer direkt mit einen dualen Zähler verbinden, dann werden die Dualzahlen, die der Zähler in Form von binären Signalen ausgibt, auf je eine eigene Leitung ausgegeben. Wenn man nun einen Dekodierer an die Ausgänge des Kodierers anschließt und diesen wiederum an eine Anzeige anschließt, werden die Zählschritte des Zählers dargestellt. Man kann auch einen Übertragaddierer statt des Zählers verwenden, wodurch man einem Rechner schon sehr nahe kommt.

Variante 2[Bearbeiten | Quelltext bearbeiten]

Schaltnetze Kodierer und Dekodierer (Redstone) Bild 1.3.png Schaltnetze Kodierer und Dekodierer (Redstone) Bild 1.4.png

Dieser Kodierer ist wesentlich schneller als die erste Variante, dafür ist sie aber größer. In der Funktionalität ist er exakt gleich.

Variante 3[Bearbeiten | Quelltext bearbeiten]

Schaltnetze Kodierer und Dekodierer (Redstone) Bild 1.5.png Schaltnetze Kodierer und Dekodierer (Redstone) Bild 1.6.png

Diese Variante des Kodierers funktioniert genauso wie die vorangegangenen Varianten, allerdings wurde durch den diagonalen Aufbau der Platz wesentlich verkleinert.

Dekodierer[Bearbeiten | Quelltext bearbeiten]

Schaltnetze Kodierer und Dekodierer (Redstone) Animation 2.1.1.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 2.1.2.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 2.1.3.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 2.1.4.png Schaltnetze Kodierer und Dekodierer (Redstone) Animation 2.1.5.png

Auf den Bildern ist ein Kodierer als Signalgeber aufgestellt, dieser gibt die Signale direkt an den Dekodierer weiter, dieser ist in diesen Beispiel als Dezimaldekodierer ausgeführt. Wenn man nun einen der Hebel vom Kodierer betätigt, welche dann ein Signal im Dualsystem abgibt, so wird dieses von Dekodierer abgegriffen und ins Dezimalsystem dekodiert (Im Sinne von der Sieben-Segment-Anzeige). Bei dem Übertrag wird ein Und-Gatter benötigt, welches feststellt ob ein bestimmter Wert vorliegt, sobald alle zehn Eingänge ein Signal liefern wird keine Zahl mehr abgeschickt. Somit kann in der zweiten Stelle nur dann die 0 angezeigt werden, so lange ein Wert von 0 - 9 in der ersten Stelle vorhanden ist. So geht es dann mit den weiteren Überträgen weiter. Je nach dem wie viel Stellen man haben möchte, umso ausgedehnter werden die Und-Gatter. Denn pro Zahlstelle benötigt man einen separaten Dekodierer, hier in diesen Beispiel kann der Dekodierer zwei Stellen des Dezimalsystems darstellen.

Wenn man ein Dezimalzahlensystem mit diesen Dekodierer erreichen möchte, so kann man die Ausgänge des Dekodierers wie folgt setzen, eine "1" steht für eine Redstone-Fackel, eine "0" für keine:

Dezimalzahl Ausgang 7 Ausgang 6 Ausgang 5 Ausgang 4 Ausgang 3 Ausgang 2 Ausgang 1
0 1 0 1 1 1 1 1
1 0 0 0 0 1 0 1
2 0 1 1 1 0 1 1
3 0 1 0 1 1 1 1
4 1 1 0 0 1 0 1
5 1 1 0 1 1 1 0
6 1 1 1 1 1 1 0
7 0 0 0 0 1 1 1
8 1 1 1 1 1 1 1
9 1 1 0 1 1 1 1

Double Dabble[Bearbeiten | Quelltext bearbeiten]

Ein besonders bei großen Zahlen gutes Hilfsmittel ist der Double Dabble. Er wandelt Binärzahlen in BCD (Binary Coded Decimal) um, welche dann durch die oben beschrieben Dekodierer ins Dezimalsystem gesetzt werden können. Die Binärzahl 1000000 (64) wird dann als 0110 0100 ausgegeben und ist pro 4 Bit zu dekodieren: 0110 = 6 und 0100 = 4.

Beim Double Dabble wird die Binärzahl in das System geschoben (Shift). Sollte durch das Shift in einem Halbbyte eine Zahl größer als 4 entstehen, wird 3 hinzugezählt. Um das besser verständlich zu machen, ist hier das Beispiel der 64 Schritt für Schritt:

Erläuterung Halbbytes <= Shift Halbbyte-Werte
Ursprungszustand: 0000 0000 1000000 0 und 0
Shift: 0000 0001 000000 0 und 1
Shift: 0000 0010 00000 0 und 2
Shift: 0000 0100 0000 0 und 4
Shift: 0000 1000 000 0 und 8. Die 8 ist größer 4
3 addieren: 0000 1011 000 0 und 11
Shift: 0001 0110 00 1 und 6. Die 6 ist größer 4
3 addieren: 0001 1001 00 1 und 9
Shift: 0011 0010 0 3 und 2
Shift: 0110 0100 6 und 4. Fertig!


Disambig color.svg