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
RyoOhki Anonym „Da liegen wir ja wohl ein wenig daneben. Nach der Compilierung und der Erzeugung...“
Optionen

ich denke was er meint ist folgendes:

wenn ich eine reihe Rechnungen wie

Add = 1 + 2
usw

oder

Add = 0,1 + 0,2
usw

ausführe, fast der Compiler das während des Komplierens direkt zu

Add = 3

oder
Add = 0,3

zusammen

so das der eigentliche Rechenschritt (1 + 2 oder 0,1 + 0,2) garnichtmehr vom Program ausgeführt werden muss.

verwende ich jetzt aber additionen wie

add = z + 1 , wobei z eine Zufalszahl ist, die bei Programmstart gezogen wird, kann der compiler diesen schritt nicht vereinfachen und die berechnung muss ja vom programm selbst ausgeführt wird, da der wert der zufallszahl ja erst bei programmstart zur verfügung steht.

ich hoffe, ich liege da jetzt nicht völlig falsch, das ganze ist ziemliches neuland für mich

grüße, ryo



bei Antwort benachrichtigen