Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Anonymous

unregistriert

1

14.09.2005, 14:34

asin

Wie berechnet man mit Fließkommaassemblerbefehlen den Arkussinus?

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

2

14.09.2005, 15:00

google --> FPU simple code fsin --> Freuen ;)

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

3

14.09.2005, 19:39

Gefragt war aber nach dem Arkussinus, nicht nach dem Sinus!

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

4

14.09.2005, 19:44

Zitat von »"David Scherfgen"«

Gefragt war aber nach dem Arkussinus, nicht nach dem Sinus!


fsin ist die am meisten benutzte und wenn man nicht weiß wie die FPU Instruktion genau heißt, nimmt man eine bekannte trigonometrische Instruktion der FPU um die anderen ebenfalls zu finden die man vorher nicht kannte? Einfaches logisches Denken. Ich werf doch keinem die genaue Antwort an den Kopf.

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

5

14.09.2005, 22:03

Es gibt aber keinen CPU-Befehl für den Arkussinus.
Zumindest kennt Visual C++ ihn nicht.

Wenn ich folgendes kompiliere:

float y;
float x = sinf(y);

und ich lasse mir den Assembler-Code ausgeben, dann sehe ich, dass dort der CPU-Befehl fsin genutzt wird.

Verwende ich jedoch

float x = asinf(y);

dann steht im Assembler-Code an der Stelle nur ein Aufruf der asin-Funktion aus der Standardbibliothek. Es gibt also scheinbar keinen CPU-Befehl für den Arkussinus, denn sonst würde er an der Stelle ja auch genutzt.

Eine Suche bei Google nach "implementierung arcsin" führt weiter. Gleich an erster Stelle gibt es ein PDF mit Ansätzen zur Implementierung von arcsin in Assembler.

Werbeanzeige