acos und ASM



  • Hallo!
    Ich will im Inline-Assembler den acos von einer double Zahl berechnen (ohne math.h zu benutzen). Wie lautet denn der Assembler-Befehl?

    Danke schonmal im Voraus...



  • Moin, Moin...

    Einen Co-Prozessor-Befehl für den Arcus Cosinus gibt es nicht. Es gibt fsin, fcos, fsincos, fptan und fpatan. Du musst den Arcus Cosinus mit den vorhandenen Befehlen nachbilden. Hiefür benötigst Du fpatan, der den partiellen Arcus Tangens berechnet, d.h. die Ergebnisse gelten nicht für alle Winkel und müssen noch entsprechend angepasst werden. Allerdings kenne ich die mathematischen Zusammenhänge nicht. Die Formel, die ich gefunden habe lautet:

    arccos(x) = arctan( sqrt( 1 - ( x * x ) ) / x )
    

    Ciao...



  • Was ist mit einem Coprozessorbefehl für die Quadratwurzel?



  • hackbert schrieb:

    Was ist mit einem Coprozessorbefehl für die Quadratwurzel?

    fsqrt

    In ST steht der Radikant. Die Quadratwurzel wird in ST zurückgeliefert.

    Ciao...


Log in to reply