Hallo Hanni & Sebastian,
ich finde die Subtraktionsmethode wunderbar!
Im mikrocontroller.net hat ja z.B. der Peter Dannegger in diesem Thread LINK zwei schöne Beispiele in Assembler gegeben.
Einmal für 32Bit und einmal für 16Bit - prima.
Ich habe versucht, diese Beispiele in Bascom mit dem Inline-Assembler in bestehende Programme einzufügen. Leider meckert der Compiler an mehreren Stellen.
Weil es in Bascom keine BIN2BCD Wandlung gibt, hab ich dann ein wenig mit Schleifen-Konstrukten gearbeitet. Geht auch wunderbar, aber bläht leider den Code im Endeffekt noch mehr auf, also die Modulo-Lösung.
Ich hatte es ungefähr so versucht:
In "result" stand die zu zerlegende Zahl. Geht wiegesagt, ist aber alles andere als effizient - liegt aber an mirCode:'============================================ ' Stellen separieren '============================================ Sub separieren() hunderter = 0 zehner = 0 einer = 0 While result > 100 result = result - 100 Incr hunderter Wend While result > 10 result = result - 10 Incr zehner Wend einer = result End Sub '--------------------------------------------![]()
Ich wäre dankbar für ein paar Denkanstöße, wie diese Methode auch in Bascom gut umzusetzen wäre..
Viele Grüße,
Bruno







Zitieren

Lesezeichen