Potenz langsam
Übersicht

![]() |
CasiopayaBetreff: Potenz langsam |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi
kann, sein dass das schonmal genannt wurde (habs in der Suche nicht gefunden) aber warum ist Code: [AUSKLAPPEN] t# = s# * s#
eigentlich 8 mal schneller als Code: [AUSKLAPPEN] t# = s# ^ 2 ?
Mir will aus Compilerbau-Sicht (da kenn ich mich ein wenig aus) nicht klar werden, weswegen der Unterschied so gravierend sein sollte. Ok, im 1. Fall wird sicher der Cache ausgenutzt, aber das wäre im 2. Fall (bzw. GERADE im 2. Fall!) doch auch logisch. Hat da schonmal jemand in den erzeugten Assembler-Code geschaut? Grüße Casiopaya EDIT: Ok, sorry, ich hab schon selbst ne Möglichkeit entdeckt: Die Potenzfunktion "^" nimmt Floats als Exponenten an (die Potenzfunktion ist also mächtiger als die Konkatenation von Multiplikationen). Trotzdem wundert es ein wenig, warum da nicht überladen wurde. |
||
![]() |
ProfJakeehemals "DTC" / "Fabian Niemann" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vielleicht weil s ^ 2 nicht gleich s + s, sondern s * s ist.
Oder hast du dich da verschrieben? |
||
![]() |
DAK |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich schätze, der punkt ist der, dass die funktion hinter s^2 nicht nur für ^2 sondern auch z.b. für ^7.32545786879 funktionieren können muss und desswegen nicht einfach s*s draus machen kann (versuch mal 2 1/2 mal s* hintereinander zu schreiben)... | ||
Gewinner der 6. und der 68. BlitzCodeCompo |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group