hmmm... die syntax is dann doch n bisi anders als ichs gewohnt bin (bisher hab i nur n bisi auf x86 und nem 8051 'geproggt' und auch das nicht ganz freiwillig...) abers scheint zu passen
hab auch geflucht als wir damals mips asm gecodet haben...alles sehr ungewohnt...aber wenn man sich erstmal an die masse von registern bei risc gewöhnt hat, dann ist x86 nur noch deprimierend :/
n bisschen optimierungsarbeit für den code oben erhöht leider die komplexität beträchtlich, wenn mans sauber machen will. das ganze funktioniert zwar schon so wie oben, für grosse zahlen jedoch...subtraktion kostet ja fast nichts, der sprung noch weniger, der vergleich auch nicht soviel, auch die sprungvorhersage macht wohl keine probleme, so dass man bei pipelines nicht mit problemen rechnen muss...aber die pure masse der schleifenwiederholungen...immerhin zahl/10 stück :/ bei maxint ne spassige sache...
ansonsten bleiben ja nur möglichkeiten wie konventionelle divisionsalgorithmen (die sind dann auch universell verwendbar), alternativ eine schleife mit einer grösseren potenz oder eine totale eigenbau-lösung, die dann nur mit 10 funktioniert und nicht ohne weiteres ausbaubar ist (z.b. betrachtung einzelner stelligkeiten). die erste und die dritte möglichkeit haben den vorteil, dass ihre laufzeit ziemlich unabhängig von der zahl ist.
schnell modulo rechnen ist schon ein bisschen tricky, wenn der asm befehlssatz das nicht zur verfügung stellt :/