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:

Code:
'============================================
' 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
'--------------------------------------------
In "result" stand die zu zerlegende Zahl. Geht wiegesagt, ist aber alles andere als effizient - liegt aber an mir

Ich wäre dankbar für ein paar Denkanstöße, wie diese Methode auch in Bascom gut umzusetzen wäre..

Viele Grüße,
Bruno