Forum: Compiler & IDEs Kann man prozessorinterne Datenregister benutzen?


von Fabian D. (goto)


Lesenswert?

Hallo,

ich habe das Forum mehrmals durchsucht und bin auf keine Lösung meines 
Problems gestoßen.

Kann man mit AVR-GCC die internen Register des Prozessors R00-R31 
benutzen oder ist das nicht möglich?
Wenn ich als Hilfsvariablen zum Beispiel uint8_t benutze, dann braucht 
das immer ein Byte auf dem Speicher(Das ist ja erstmal nicht so 
schlimm), aber ein Zugriff auf den Scheicher ist auch um vieles 
langsamer als einer auf ein Register.

Gruß
  GOTO

von Klaus (Gast)


Lesenswert?

Mach dir keine sorgen. Wenn es nur eine lokale Hilfsvariable ist, und du 
die Compilier-Optimierung nicht deaktiviert hast, wird der Compiler die 
Variable eh nur in einem Register anlegen.

von Stefan Salewski (Gast)


Lesenswert?

>Kann man

AVR-GCC benutzt von sich aus bevorzugt Register.
Man sollte dem gcc in der Regel diese Freiheiten lassen, meist weiß er 
sehr gut was sinnvoll ist.

Tatsächlich kann man irgendwie auch feste Register erzwingen, das ist 
aber eher für Spezialfälle.

Jörg kann da sicher mehr zu sagen, wenn er denn noch wach ist.

von Frank L. (hermastersvoice)


Lesenswert?

Wenn man RAM-lose Controller programmieren will bleibt kaum was Anderes 
als die Register zu nutzen.

bye

Frank

von Michael K. (1am3r)


Lesenswert?

Wenn man RAM-lose Controller programmiert, tut man das in der Regel auch 
nicht mit C...

von Stefan Salewski (Gast)


Lesenswert?


von Fabian D. (goto)


Lesenswert?

Vielen Danke für dei vielen Ratschläge

GOTO

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.