Schleifen hast du auch zur Verfügung?
WHILE x >= m DO x = x - m
Ja, do while und for. Deren Zeitverhalten habe ich aber noch nie untersucht und die Hardware ist gerade in Gebrauch so das ich das jetzt nicht testen kann.
Deine Lösung funktioniert aber nicht für negative x. Mit einer Fallunterscheidung dürfte es schon zu langsam sein, muß ich aber testen.
PS: x ist vermutlich immer kleiner als das Vierfache von m aber eine Lösung die davon unabhängig ist, wäre natürlich besser.