Archiv verlassen und diese Seite im Standarddesign anzeigen : Binär Multiplizieren und Dividieren?
Hi Leute,
Ich habe vor bei mir in der Ausbildung einen "Taschenrechner" mit Logikgattern und Flippflops aufzubuaen.
Dazu müsste ich allerdings noch wissen wie man im Binärsystem Zahlen Dividieren und Multipilizieren kann!
Hab dazu auch schon unter Wikipedia gesucht aber nichts brauchbares gefunden.
Wäre echt nett von euch wenn ihr mir dabei Helfen könntet. 8-[
Hallo Tob
ein Addierer ist einfacher. Dazu gibts in den einschlägigen Schulbüchern entsprechende Infos.
Gleiches gilt für den Multiplizierer. Allerdings ist der doch aufwendiger.
Ich weiss nicht , welchen Beruf du lernst, nehme aber an, dass das wohl in die Richtung geht.
Schau also erst mal nach "Volladdirer" und "Halbaddierer.
Gerhard
Also mir gehts eigentlich weniger um das Addieren von Zahlen,
da ich mir dazu schon einen Schaltplan mit Volladdierern überlegt habe.
Ich wollte nur wissen wie man Binär Multipliziert und Dividiert! ](*,)
PS: Ich mach ne Ausbildung zum Elektroniker für Bertiebstechnik.
Schau mal hier:
http://de.wikipedia.org/wiki/Dualsystem#Schriftliche_Multiplikation
SprinterSB
08.10.2006, 14:06
IMHO ist Division sehr kompliziert in Hardware zu implementieren. Dividieren und Multiplizieren funktioniert genau so, wie man es in der Grundschule lernt (eben für 2er-System anstatt 10er-System).
Bei einer Divison musst du ja Schieben-Vergleichen, Subtrahieren wenn kleiner, etc. Das ist sehr aufwändig in HW. Da brauchst du schon mehr als ne einfache ALU kann: Schleifen und so, also ein richtiges Rechenwerk mit Registern und Taktung.
Am einfachsten in eine Dummie-Division, nicht so effizient wie die Grunschul-Division, dafür aber einfachen. Hier für positive Zahlen ausgetextet:
## QUOTIENT = DIVIDEND / DIVISOR
## REST = DIVIDEND modulo DIVISOR
IF DIVISOR = 0
ERROR
ELSE
QUOTIENT := 0
REST := DIVIDEND
WHILE (DIVISOR <= REST)
REST := REST - DIVISOR
QUOTIENT := QUOTIENT + 1
END WHILE
END IF
Die Subtraktion machst du im 2er-Komplement:
y-x := y + 1 + NOT x
Für Spezialarchitektur zum schnellen Multiplizieren kannst Du hier mal nachsehen.
Normalerweise wird man die Additionen zum Multiplizieren seriell ausführen, auch auf Gatterebene.
Manfred
http://images.google.de/images?svnum=10&hl=de&lr=&q=multiplier+wallace
http://www.iccd-conference.org/proceedings/1998/90990122.pdf#search=%22fast%20multiplier%20bit%20w allace%22
http://www.ece.cmu.edu/~lowpower/cicc96.pdf#search=%22fast%20multiplier%20bit%20wal lace%22
Danke für eure Antworten!
Eure Links haben mir sehr weitergeholfen. \:D/
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.