PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : asm: 16bit durch 16bit dividieren



Benedikt.Seidl
07.04.2007, 19:34
hallo

bin mal wieder bisschen am programmieren und brauche dafür eine routine die 16 bit "variablen" durch 16 bit teilt. ich finde immer nur welche mit 24 durch 16 oder so. zum selber schreiben habe ich irgendwie keine lust, und dann wird es bestimmt auch nicht sehr effektiv :-/

hat da jemand was für mich?

danke schön

SEIDL.

Mobius
07.04.2007, 23:37
Die einfachste Variante? Du nimmst einen 24 durch 16 Dividierer von hier (http://www.piclist.com/techref/microchip/math/div/index.htm) und setzt die obersten 8 bits einfach auf 0. Nicht sehr effektiv, was die Rechenleistung anbelangt, aber sicher die Methode, die die kleinste Arbeit mit sich bringt.

Oder aber du nimmst den Application Note AN544 (http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011088) von Microchip her und implementierst dessen 16/16bit Dividierer. Ka, wie effektiv der ist, hab ihn noch nie verwenden müssen, aber sicher besser als es selber zu schreiben ;).
MfG
Mobius

Benedikt.Seidl
08.04.2007, 12:33
joa,.. dann werde ich das wohl oder übel so machen müssen :-/

wenn jemand doch noch einen tipp hat, immer her damit!

SEIDL.

PICture
08.04.2007, 22:13
Hallo Benedikt.Seidl!

In welchem Zahlensystem soll es sein? Ich habe schon für Dezimalzahlen fast ganzen Taschenrechner auf einem PIC programmiert. :)

MfG

Benedikt.Seidl
09.04.2007, 21:23
öhm,.. zahlensystem.. binär? hexadezimal? was halt der pic so nativ spricht ;-)

SEIDL.

PICture
10.04.2007, 18:13
Na ja, dann kann ich Dir leider nicht weiter helfen, da ich die Messergebnisse (z.B. Frequenz) immer zuerst hex->dec wandle und weiter alles im Dezimalsystem berechne.

MfG

Benedikt.Seidl
10.04.2007, 18:21
warum das? welche vorteile hat das?

SEIDL.

PICture
10.04.2007, 19:08
Ich kann dann alle Ergebnisse eifach an einem Display darstellen.

MfG