2013-03-27 2 views
7

Dies ist in der Tat eine dumme Idiosynkrasie von mir, aber ich kann es nicht ertragen, wie GNU AS einen Kommentar einfügt. Ich bin zu sehr an den Sun-Weg gewöhnt (derselbe, der in den meisten UNIX-Assemblern verwendet wird), der einen einfachen Schrägstrich "/" verwendet, um den Code bis zum Ende der Zeile auszukommentieren.GNU Assembler comments

Kennen Sie einen Weg, um meine kleine Laune zu erreichen?

+0

Einige Regex (Vim, Perl, sed ...) würde es wahrscheinlich leicht tun. Sie können den entsprechenden Regex-Befehl in 'Makefile' hinzufügen, um Ihren Quellcode vorzuverarbeiten, um die Kommentarsyntax Ihrer Wahl in eine für GNU AS gültige Kommentarsyntax zu konvertieren. – nrz

+0

Meine Version von 'as' (2.20.1, x86_64-linux-gnu) akzeptiert'/',' // 'und' # 'als Kommentarstarter. – Michael

+0

@Michael: Sie sehen, '/' funktioniert in 'as' nur, wenn es das erste Zeichen in einer Zeile ist. Sie können es nicht nach einer Anweisung setzen, um den Rest der Zeile zu kommentieren. – mghis

Antwort

11

Ja, verwenden Sie weiterhin # und Sie werden sich daran gewöhnen.

Es kann Möglichkeiten geben, / zu arbeiten, aber dann ist Ihr Code nicht nur prozessorspezifisch, sondern buchstäblich computerspezifisch. Sie sind besser dran, sich an kleine Dinge zu gewöhnen, als die Portabilität Ihres Codes komplett zu zerstören, um sich einer Laune anzupassen.

15

Im Gnu-Assembler ist das Kommentar-Startzeichen zielspezifisch. Für i386 und x86_64 ist es #. Für ARM ist es @ (# funktioniert nicht für ARM).

Einige andere Kommentarkonventionen funktionieren unter bestimmten Bedingungen. Ich bin mir nicht sicher über die Details. // comment starter und/* */multiline Kommentare sind Beispiele, die ich gesehen habe.

+0

Danke. Ich habe # zufällig versucht, aber offensichtlich einen Fehler bekommen, als ich versuchte, einen Kommentar am Ende einer nicht leeren Zeile zu setzen. Jetzt benutze ich @ überall. –

+3

'@' für ARM in der Tat – JSmyth

+0

Dies kann nicht ernst sein. Es ist ; auf AVR – thekiwi5000