Oh man, diese Routine von Stefan ist ja geradezu monströs (129
Instruktionen).
So umständlich muß man das also mit einem PIC machen.
Durchsehen kann da eh keiner ganz ohne Kommentare oder Beschreibung.
Allgemein gilt:
Die einfachste und schnellste Methode bei CPUs ohne Division ist die
Subtraktionsmethode. Man zieht 10000, 1000, 100, 10 ab bis zum
Überlauf, zählt mit, wie oft man das machen kann und schon hat man in
diesen 4 Zählregistern die Digits, übrig bleiben die Einer. Addiert man
dann die ASCII-'0' dazu, hat man den ASCII-Code und fertig.
Anbei mal ein Beispiel nach dieser Methode für den AVR (nur 21
Instruktion = 16% der PIC-Version).
Ist bloß etwas optimiert (abwechselnde Subtraktion / Addition bis zum
Vorzeichenwechsel), man spart sich dadurch die Korrektur nach jedem
Überlauf.
Peter