www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Arm Assembler richtig kommentiert?


Autor: Dolphon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe folgenden Assembler Coder bekommen, und sollte diesen 
kommentieren.
Ich würde euch bitten, einmal zu schauen ob ich den Code richtig 
beschrieben habe.
puts:
  stmfd sp!,{lr}  @ Retten der Register

  mov    r1, r0        @Übergebenen Parameter von R0 nach R1 kopieren
puts_loop1:  
  ldrb    r0, [r1], #1  @1. Byte von R1 nach R0 und dannach erhöhen
  cmp    r0, #0        @Vergleich ob R0 0 ist
  beq    puts_end      @Ist R0=0 dann zum Label puts_end springen ansonsten weiter
  swi    1          @swi 1 ausführen
  cmp    r0, #0xa      @Prüfung ob R0 Newline ist
  moveq  r0, #0xd      @Wenn Vergleich stimmt Cariage Return in R0
  swieq  1          @Wenn Vergleich stimmt swi 1 ausführen
  b      puts_loop1    @wieder von vorne beginnen
  
puts_end:
  ldmfd sp!,{pc}  @ Rücksprung



Autor: Wolfgang Mües (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dolphon,

wenn Du für mich arbeiten würdest, würde ich Dir für diesen Kommentar 
die Ohren langziehen!

Weil: Du hast kommentiert, was der Code tut. Das kann aber jeder selbst 
sehen, der ein bisschen Ahnung von Assembler hat.

Der Sinn von Kommentaren ist, das zu kommentieren, was NICHT im Code 
steht und dort herausgelesen werden kann.

Also z.B. zu was diese Funktion eigentlich gut ist, welche 
Besonderheiten sie hat und warum der Coder ausgerechnet diese Lösung für 
das Problem gewählt hat.

Wahrscheinlich lernst Du gerade programmieren. Dann sollte Dir Dein 
Lehrer auch beibringen, wie man richtig kommentiert.

Gruß

Wolfgang

Autor: Marcus Harnisch (mharnisch) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wolfgang Mües schrieb:
> wenn Du für mich arbeiten würdest, würde ich Dir für diesen Kommentar
> die Ohren langziehen!

Und die desjenigen, der das programmiert hat -- dafür, dass der Stack 
nicht 8-byte aligned ist. Oder für das Fehlen eines Kommentars, der 
sagt, warum das in diesem Fall nicht für nötig gehalten wird :-)

Gruß
Marcus
http://www.doulos.com/arm/

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.