Hyperbel???
Du meinst, Deine Geschwindigkeit ändert sich hyperbolisch??? Das ist aber eine merkwürdige Geschwindigkeit! Vielleicht meinst Du "nichtlinear".
Das macht aber dann keinen Unterschied zu Deiner Variante mit der Division, denn da nimmst Du sie auch linear an und bildest den Mittelwert über dieselbe Periode wie ich.
Sollte sich die Änderung der Geschwindigkeit (also die Beschleunigung) innerhalb des Messintervalls so stark ändern, dann ist das bereits ein Problem der Hardware -> zu geringe Auflösung der Encoder.
Solche Probleme sollte man nicht unbedingt versuchen zu korrigieren, wenn man nur 50 Takte zur Verfügung hat.
Allerdings habe ich im Nachhinein festgestellt, dass Du mehrere 50 Takte meintest. Bei 16Bit Operationen sind die dann natürlich auch notwendig.
Der GCC Link von Sprinter ist echt gut, wenn auch etwas unübersichtlich auf den ersten Blick.
Mit dem Link von wkrug kann ich nicht so viel anfangen, weil da kein Code zu finden ist.
Wenn es nicht 32Bit sein müssen kann ich nur die optimierten Routinen von Atmel selbst empfehlen. Es gibt sie Code- und Speed-Optimized, sie funktionieren sicher und es sind jeweils Code und Taktverbrauch angegeben.
Gruß

PS: Danke, ich finde meine Methode auch genial...