Forum: Compiler & IDEs AVR-GCC: Division und Rest in einem Schritt


von Christian Zietz (Gast)


Lesenswert?

Hallo,

in einem Programm brauche ich öfter die Division eines Integers und den
Rest dieser Division. Da der AVR ja keine Hardware-Division beherrscht,
löst GCC das durch eine kleine Subroutine (namens __udivmodqi4), die
sowohl den Quotienten als auch den Rest liefert. Leider produziert
etwas in der Art von

q = i / 10;
r = i % 10;

(alles uint8_t-Variablen) zwei Aufrufe dieser Subroutine obwohl nach
dem ersten schon beide Ergebnisse zur Verfügung stünden. Gibt's eine
Möglichkeit das zu ändern?

Christian

von A.K. (Gast)


Lesenswert?

avr-libc div() und ldiv()

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.