ATtiny15l program counter

Gast #437689
Lesenswert?
• ▲
▼
hallo,

mich interresiert es wie der program counter bei attiny15l mit einer 
adresse gefullt wird, bzw. der program counter ist 9 bit breit und die 
data bus ist 8 bit breit, also zmb bei rjmp wie kommt die neue adrese in 
den PC? wird es zwei mal dur die data bus geschickt (einmal 8 bits, und 
einmal 1 bit), oder irgednwie anders?
RJM ist doch PC=PC+k+1 wo k auf 12 bits ist also von -2048 bis 2048 (was 
ja reciht um das ganze progam flash zu adressieren)
wird das PC+k+1 in der ALU augefuhrt oder nicht? die alu kann odch nur 
mit 8 bits arbeiten...?

vielen dank im vorraus
Angehängte Dateien:
#437784
Lesenswert?
• ▲
▼
Nunja, intern (im Bitmuster des Codes) sieht das etwas anders aus als im 
ASM-Quelltext.

Du schreibst
 rjmp label1

Im Code wird aber nicht die Adresse von "label1" gespeichert, sondern 
die Differenz zwischen der aktuellen Adresse und Label1. Und da der 
Tiny15 nur 1kB Flash hat, dieser auch noch Word-adressiert wird (512 
Words a 2 Bytes), reichen 9 Bit im PC aus, jede Adresse zu speichern. 
Die Differenz kann also nie größer als 511 (9 Bit) werden.

Die volle 12-Bit-Distanz von k wird erst bei AVRs mit 8kB Flash 
ausgenutzt.

...

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.