Wie rechnet man Dezimalzahlen zu Binärzahlen mit And-, Or- und X-Orgates?

2 Antworten

Du kannst die Frage reduzieren auf: Wie erstellt man logische Funktionen aus einer Logiktabelle:

Zum Beispiel für die Zahlen 1-9:

1 <=> 0001
2 <=> 0010
3 <=> 0011

...

9 <=> 1001

Jetzt hast du 9 einzelne Eingänge und 4 Ausgänge, kannst also mit den 9 Eingängen 4 Funktionen für die jeweiligen Ausgänge angeben. (Dazu findest du mehr bezüglich "binary coded decimal")

Für Zahlen über 9 wird es schwieriger. Bei einer zweistelligen Zahl (0-99) hättest du für jede Stelle 9 Eingänge, also 18 Eingänge. Du bräuchtest 7 Bit - also 7 Ausgänge = 7 Funktionen, um alle Zahlen zu codieren... bzw. umgekehrt: 18 Funktionen mit jeweils 7 Eingängen.

Bei "normalen" Binärzahlen hast du das Problem, dass sich auch höhere Dezimalziffern auf untere Bits auswirken kann, beziehungsweise untere Dezimalziffern auf höhere Bits: siehe z.B. Teilbarkeit durch 4 (unterste beiden Binärstellen) oder der Sprung von 31 auf 32. Daher wird die Logik schwieriger.

Bei Binary-Coded-Decimal (BCD) hättest du das Problem nicht, da jede Dezimalziffer zu genau 4 Bits kodiert wird.

Zurück zum Thema: Aus Funktionstabelle solltest du eine Funktion entwickeln können, z.B. mit Karnoug-Veitch-Diagramm oder Minterm/DNF Form...

if 1&1&1&1 : 15

if 1&1&1&0 : 14

if 1&1&0&1 : 13

if 1&1&0&0 : 12

usw.

Woher ich das weiß:Studium / Ausbildung – Bachelor in Informatik 👨🏻‍🎓