Pausen Assembler

Gast #131105
Hallo!
Ich habe dieses kleine Programm im Forum gefunden.
Aber ich verstehe diese Zeilen nicht genau:

ldi r19, 41

c3:  ldi r18, 255

c2: ldi r17, 255

c1:  dec r17
  brne c1

  dec r18
  brne c2

  dec r19
   brne c3

Ich weiß, dass das Programm so noch nicht funktionieren würde aber ich
würde gerne wissen was diese Zeilen genau bedeuten. Und vielleicht auch
wie man die Dauer berechnen kann, die diese Zeilen benötigen.
Mfg Argon
Angehängte Dateien:
Gast
die atmel befehlsrefernez gibt dir beschreibungen und taktanzahl zu
allen befehlen. gibts auf der atmel website. (instruction set manual)
das ganze kannst du auch im avrstudio simulieren, dann siehst du was
passiert und kannst die auch anzeigen was wie lang dauert
Gast
nehmen wir mal den inneren teil.. den mit c1...
er verkleinert den zähler (kostet 1 takt)
und springt (meistens) und das kostet 2 takte
weil er es 255 mal macht sind das 255x3 takte...

dieses ding macht er aber wieder 255 mal, folglich 255x255x3 takte und
das wiederum 41 mal ==> 41x255x255x3 + ein paar zerquetschte... ich
glaub so 255*2*41 ... so grob abgeschätzt...

alles also eine verzögerung von vielen vielen takten...

dave

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.