Nachdem ich meinen Raspberry Pi bekommen hatte, entschied ich, dass ich lernen wollte, wie man ARM-Assembler-Code schreibt. Meine Frage ist, was muss ich anfangen? Ich gehe davon aus, dass bereits ein Compiler installiert ist, aber ich weiß nicht, was es ist (gcc vielleicht?). Jede Hilfe wird geschätzt!
20
Antworten:
Hängt davon ab, wie viel Assembler Sie schreiben möchten. Wenn Sie nur kleine Schnipsel schreiben möchten, die in C-Code eingebettet sind, dann
gcc
ist dies in der Tat das, wonach Sie suchen. Beispiele für die Verwendung derasm
Direktive in C finden Sie unter inline asm reference at: ARM GCC Inline Assembler CookbookWenn Sie jedoch mehr als nur kleine Schnipsel schreiben möchten, ist es besser, einen vollständigen Assembler zu verwenden. Dies wird entweder als zur Verfügung steht
as
,gas
oder beide (aliased).Und zum Schluss müssen Sie noch etwas über den ARM-Befehlssatz lernen. Eine praktische Referenz finden Sie unter: ARM1176JZF-S Technical Reference Manual .
NB Bitte denken Sie daran, dass RPi nur armv6-Anweisungen unterstützen. Versuchen Sie also nicht, etwas von armv7 zu verwenden
Viel Glück!! :)
quelle
Ich habe mein Abenteuer vor nicht allzu langer Zeit selbst mit ARM-Assembler-Code begonnen und hier sind meine Ressourcen:
quelle
Obwohl ich mit der Befehlszeilenschnittstelle ziemlich vertraut bin, konnte ich dem Komfort der grafischen Benutzeroberfläche nicht widerstehen. Vor einiger Zeit entdeckte ich, dass ich mit CodeBlocks IDE ARM-Assembler-Programme in einem Raspberry Pi entwickeln konnte. Also schrieb ich ein Tutorial und fügte es dem Tutorial zur Raspberry Pi-Assembly-Programmierung hinzu, das ich für die Website des Mazidi ARM Assembly-Buches schrieb:
http://www.microdigitaled.com/ARM/ARM_ASM_books.htm
Klicken Sie auf der Website auf den Link "ARM Assembly Programming Using Raspberry Pi GUI".
Hoffe das hilft.
quelle
GCC wird standardmäßig installiert. Wenn Sie Raspberry Pi noch nicht kennen, sollten Sie sich eine einfachere Programmiersprache als ARM-Assembly ansehen. Es gibt keine IDEs für die Assemblierung, daher müssen Sie einen Texteditor verwenden und ihn über das Terminal zusammenstellen. Ich empfehle Gedit für die Benutzerfreundlichkeit. Um Syntax-Hervorhebungen für Assembler zu erhalten, musste ich zum Github gehen, speziell zur Seite von shinyquagsire23. Es ist sehr schön. Hilfe Die beste Ressource, die ich gefunden habe, ist "Raspberry Pi Assembly Language: Raspbian Beginners" von Bruce Smith. Sie finden es bei Amazon. Er erklärt die Montage auf eine der klarsten und einfachsten Arten, die ich gefunden habe.
quelle
Lernen Sie mit ausführbaren Beispielen
Ich arbeite an: https://github.com/cirosantilli/arm-assembly-cheat
Eigenschaften:
printf
und problemlos wiederverwendet werden könnenmemcpy
quelle