Programmieren - alles kontrollieren 4.935 Themen, 20.621 Beiträge

Zeit für Integer/Floatrechnungen

RyoOhki / 28 Antworten / Flachansicht Nickles

Eine Frage zur Berechnung von Integer und Float werten unter C++:

sollte ein Programm länger brauchen, zwei Float zu addieren (z.B. via Add = 0,1 + 0,1) als zwei integerwerte (Add2 = 1 + 1 ) zu addieren, da es sich um Flieskommberechnungen handel?

ich habe ein Programm geschrieben das beide opperationen 40000000000mal ausführt und die zeit dafür stoppt, erhalte aber bei beiden beinahe identische Werte.

Ich meine, sollte ein PC Flieskommazahlen nicht langsammer berechnen können als Integerzahlen?

Grüße,
Ryo

bei Antwort benachrichtigen
Anonym RyoOhki „Zeit für Integer/Floatrechnungen“
Optionen

Assembler und C unterscheiden sich weniger als man denkt. Daher sollte man auch von dieser Seite das Problem betrachten. Codeoptimierung ist schon einmal etwas anderes. Ich habe schon Compiler geschrieben und kenne daher die Richtung der Optimierung. Damit jedenfalls läßt sich die Compilierungszeit nicht nenneswert beeinflussen.Und das ist ja nun der Sinn der Optimierung. Nun betrachte das Problem einmal anders: int werden über den stack übergeben und belegen ein Wort. float, double, long double werden über den Coprozessor ebenfalls über den stack übergeben und belegen ebenfalls ein Wort.Wo soll es denn nun zu einer meßbaren Verzögerung kommen, wenn der Proz. in beiden Fällen zwecks weiterer Operationen auf den stack zugreift???

bei Antwort benachrichtigen