Frage

Gibt es eine Code-Konventionen für Assembly (hauptsächlich PIC)?

War es hilfreich?

Lösung

Ich konnte den Assembly Language Style Guide (PDF) finden , die Sie könnte dich interessieren.

Andere Tipps

Wenn die Montage zu schreiben, ist es ziemlich nützlich und schon gar nicht über Bord zu Kommentar Jede Zeile

Es hängt davon ab, ob Ihre Programmierung in Assembler oder mit einem C-Compiler die Montag für Sie zu erstellen, wenn die Leistung wichtig ist, keine C-Compiler verwenden, wobei die Anordnung selbst schreiben.

aber im Allgemeinen sind die Konventionen jede Zeile kommentieren, benutzen Sie einfach Subroutinen mit aussagekräftigen Namen Zeiger. es gibt Somethings Sie auf den Block, dh

Kommentar würde
    start:   movlw   0x24      //  \
             movf    count     //   put 24 into count


    MyCount: decfsz  count     //decrement count and exit if done
             goto    myCount   //do the loop
             goto    exit      //count is done exit

Dies ist die typische Codierung, die erste Spalte für die Adreßzeiger die nächsten für den Befehl und die damit verbundene Vars Sie in der Regel die Vars im Kopfbereich vor dem eigentlichen Programm definieren, aber das ist insbesondere auf die Assembler Sie verwenden. einige geben Ihnen die Variable Zeiger Option und Sie haben eine direkte Speicherstelle zu verwenden. wenn man sich den kommentierten Code zurückblicken aus dem Disassembler kommen würde es aussehen.

    0020  movlw  0x24
    0021  movf   0x25     // 0x25 = memory address of count
    0022  decfsz 0x25
    0023  goto   0x0022   // loop back to 0x22 until count = 0
    0024  goto   0x01FF

Sie es dann kommentieren Sie stellen Sie sicher, Gruppe Code Verwendung ‚nop‘ s Code zu gut runden Zahlen wie Start-Offset eine Adresse von 20 verlässt Adressen zwischen 2 und 20 klar für Interrupts und dergleichen. je nach Chip schreibe ich für die 12f675 ist eine Menge Code, so dass das Modell, das ich in der Regel verwenden.

hält auch Code in einfachen klaren Subroutinen und dort Adressen sollen schöne runde Zahlen Blöcke von 10 oder so nop die zwischen Ihrem ursprünglich Subroutinen verlassen können Sie Ihren Code immer zurückgehen und komprimieren später. und immer Ihren Code kommentieren Sie können es nicht genug, Stellung zu nehmen.

auch den maximalen Speicherplatz für das aktuelle Programm verlassen ich usualy meine init routeen so nahe am Ende des Speichers als posible setzen.

Ich hoffe, das hilft einigen.

Ich glaube nicht, dass es etwas formal, sondern auf ihrer Website die kodierenden Proben zu lesen gibt Ihnen einen Eindruck von den üblichen Idiomen. nur bewusst sein, dass es viele ‚Beiträge‘ aus vielen verschiedenen Bastler sind, und sie könnten nicht so schön sein.

prüfen auch andere Projekte, die meisten hässlich Code haben wird; aber Sie werden ein Juwel finden oder zwei.

ich habe nie Programm auf PIC, aber gern den Code lesen. Ich erinnere mich vage, ein „Echtzeit-O“ mit einem sehr schön und sauber Ausführungsablauf. kann mich nicht erinnern, wie konsequent war die Codierung Stil, aber ich würde dort beginnen.

es ist besser, die meisten von ihnen zu lesen, und wenn es so einfach wie Prosa ist, dann werden Sie Ihren Stil

finden

Ich bin mit Jason S - verwenden Sie einen C-Compiler, wenn überhaupt möglich ist, auch wenn Sie in Ihrer „.c“ Datei mit dem ‚__asm‘ Stichwort ein paar Zeilen Assemblersprache Einbettung am Ende

.

Wenn Sie ganze Programme in Assembler für den PIC schreiben muss, die empfohlene Funktion Aufrufkonvention ist piclist. PIC Paging und PCLATH

Es würde Sie verwenden wirklich hängt vom Modell des PIC. Zum Beispiel PIC16s und PIC18s haben viele Montagebeispiele, die leicht im Internet gefunden werden können.

Allerdings Modelle wie PIC24 und PIC32 sind viel mehr in Richtung C ausgerichtet Ihr viele PIC Beispiele in C sind, die auf der Website für Ihre spezifischen PIC-Modell gefunden werden kann. Diese PIC-Modelle können noch in Montage programmiert werden, aber ihre sind nur sehr wenige Web-Beispiele auf, wie. Die beste Quelle für das heißt in MPLAB unter „Hilfe“, überprüfen Sie die „Hilfe Inhalt“ von was auch immer Assembler Ihre PIC-Modell verwendet. Dies zeigt Ihnen einige Beispiele sowie Anweisungen, wie in PIC Montage programmieren und einfache PIC Aufgaben wie die Definition Speicher oder das Schreiben von Makros erreichen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top