Forum: Compiler & IDEs Frage zu Compiler-Optimierung


von Ulf (Gast)


Lesenswert?

Tach!!

Eine Frage zum Compiler. Ich hoffe, alle arbeiten gleich.

wenn ich eine Funktion habe:
1
int var;
2
var = funktion( );
3
PORTC = var;

ich definiere also eine zwischenzeitliche Variable "var" , das dient der 
Übersicht. Natürlich kann ich auch schreiben:
1
PORTC = funktion( );

Das macht den Code kleiner. Macht das der Compiler automatisch oder 
reserviert er die definierte variable "var" dann im Speicher für den 
gesammten Programablauf. Wäre ja Ressourcenverschwendung.

von Frank (Gast)


Lesenswert?

Solange var wirklich nur int und nicht volatile deklariert wird, sollte 
das jeder halbwegs aktuelle Compiler bei angeschalteter Optimierung 
wegoptimieren.

Generell würde ich folgende Vorgehensweise empfehlen:
1. Funktion implementieren
2. Geschwindigkeit optimieren

Natürlich muss man es nicht übertreiben und darf auch schon bei 1. 
triviale Optimierungen machen. ;) Lesbarkeit und Wiederverwendbarkeit 
sind auch Qualitätsmerkmale. Wenn es dir also hilft, den code besser 
zu verstehen, lass es drin.

von Stefan Salewski (Gast)


Lesenswert?

Wenn es

PORTC = funktion( );

tut, würde ich das niemals durch

int var;
var = funktion( );
PORTC = var;

ersetzen. Was soll denn dadurch übersichtlicher werden?

von Ulf (Gast)


Lesenswert?

war ja nur ein Beispiel :-)

von Philipp B. (philipp_burch)


Lesenswert?

Probier's aus, was er dann macht, dann hast du die Antwort ;)

von SiO2 (Gast)


Lesenswert?

und das listfile ansehen ;)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.