Hallo,
warum verwendest du nich den in der Wiki pedia beschriebenen algo? der iss doch nich schlecht. Um die genauigkeit zu steigern könntest du die ausgangs zahl a * 4 nehmen (2 mal register shiften oder auch mehr, soviel platz wie du halt hast) dann den algo anwenden, bis die lezte iteration das selbe ergebniss wieder erbracht hat, (oder einfach nach 10 mal abbrechen) denn wieder das register zurück shiften?
Also probiert hab ichs nich, aber wenn man vorher auf die zahl genug drauf gibt, genug shiftet, denn sollte es doch auch einigermasen genau sein. oder nicht?


wahlweise geht auch:
ein register von null an hochzählen und jedesmal quadrieren und vergleichen, wenn dann das ergebniss das erstemal größer als die wurzelzuziehende zahl war haste die quadratwurzel im zähler-register stehen.