www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mehrmalige Registerzuweisung?


Autor: Thomas O. (kosmos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich möchte einige Rechenroutinen in ein Programm integrieren. Da ich die 
Rechenergebnisse am Ende ins SRAM lege, wollte ich mal fragen ob ich die 
Register bei jeder Rechenroutine neu zuweisen kann? AVR-Studio wirft 
eine Warnung aber keinen Fehler aus.

Kleines Beispiel:
.def XYZ = R16
.def WXY = R17
Programm1.....


.def ZYX = R16
.def YXW =R17
Programm2.....

Autor: Fabian B. (fabs)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie du schon sagst...wirft nen fehler, das wars

gruß
fabian

Autor: Visitor (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei mir funktioniert dieses Vorgehen ohne Probleme. Man darf nur nicht 
durcheinanderkommen.

Autor: Thomas O. (kosmos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok danke.

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Warnung kommt, um Dir mitzuteilen dass Du etwas machst, wo die 
meisten einen Fehler machen. Wenn Du aber genau weisst, was Du machst, 
kannst Du das schon so machen.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn Du die Registerinhalte während der Rechnerei auf Stack sicherst und 
darauf achtest, dass Du keine Register verwendest, die für 
exklusivnutzung in ISRs vorgesehen sind, dann kannst Du die Register 
doch mit ihren ursprünglichen Bezeichnungen (r16, r17, ...) ansprechen.

Solange die Berechnungsroutine arbeitet, kann kein anderer Teil des 
Hauptprogramms arbeiten und die Register verändern. Nach der Rechnerei 
werden die alten Inhalte wiederhergestellt (pop), und das Hauptprogramm 
hat nix davon gemerkt.

...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.