mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Assembler für ARM


Autor: Andi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

weiß jemand eine (gute) Anleitung, wie man ARMs in Assembler 
programmiert. Ich habe mir Mans für Gnu AS angeschaut, da steht zwar 
Syntaxbeschreibung drin, aber wird nicht erwähnt, wie man ein kleines 
Assembler-Programm aufbaut, "Architecture Reference Manual" für ARMs ist 
da auch keine Hilfe.

Andi

Autor: Martin Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
z.B. http://www.arm.com/miscPDFs/9658.pdf und 
http://www.arm.com/pdfs/DUI0204F_rvct_assembler_guide.pdf
Syntax der Beispiele muss man allerdings anhand der "Mans" selbst auf 
arm-elf-as übersetzten - ist aber kein Hexenwerk, da sehr ähnlich.

Autor: Robert Teufel (robert_teufel_nxp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da wird's aber Englisch!

ARM System Developers Guide published by Morgan Kaufmann, ISBN 
1-55860-874-5
Geht allerdings weit ueber eine Assembler Anleitung raus. Hat seh viele 
ASM Beispiele.
Nicht ganz billig und nur bei Amazon.com, anscheinend nicht bei 
Amazon.de zu bekommen.
http://www.amazon.com/ARM-System-Developers-Guide-...


Die Autoren sind ARM FAEs und ehemalige ARM Trainers.

Vielleicht hilfts ja, Robert

Autor: DW (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andi:

Genau das "Architecture Reference Manual" wird am besten helfen. So war 
es bei mir. Habe mittlerweile den Assembler-Startup-Code erweitert, 
Exception Handler und Surprise Interrupt Handler hinzugefügt, 
Sprungtabellen, das macht keine Mühe mehr.

Was besseres wirst du nie mehr finden.

Die vorhandenen Manuals immer und immer wieder lesen, schließt immer 
mehr Lücken. Nun, das ist blöde, ich weiß. Aber das macht man aus Mangel 
an anderer Info eben. Die Hersteller tun auch nur das, um mit 
minimalstem Aufwand am besten zu verkaufen. Abstrakteste Beschreibungen, 
und absolut nicht mehr. Und wer es versteht, ist fein raus.

ARM Assembler erfordert enorme Übung. Der zeitliche Fortschritt der 
Codeentwicklung hat mit gängigen Regeln wie z.B. 10 Zeilen pro Stunde 
nichts mehr zu tun, wie ich schmerzlich feststellen muß. Und es wird 
gesagt: Die Komplexität des RISC-Befehlssatzes für ARM ist etwa mit CISC 
vergleichbar. Gut, wenn man es weiß.

Es ist auch hilfreich, sich die Assembler-Listings aus dem C-Sourcecode 
anzuschauen.

Ich liebe auch sonst Beispiele, wo man sich was anschauen kann.

Hier z.B. gibt es ein wenig Assemblercode mit Unterprogrammtechnik:

http://www.neko.ne.jp/~freewing/cpu/arm_olimex/

Gruß

DW

Autor: DW (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andi:

Hab was wichtiges vergessen:

Beispiele, wo man sich ARM-Code anschauen kann:

Dieser Tage kam mal ein Kollege, der Linux in ein System mit ARM 
implementiert, weil er weiß, daß ich ab und zu auch mit ARM Assembler zu 
tun habe.

Nun, der zeigte mir seitenweise Linux Betriebssystem-Funktionen in ARM 
Assembler.

Schau doch mal auf den Seiten von GNU, GCC, Linux, und wie die alle 
heißen, dort ist das Material dort frei verfügbar. Die Seiten habe ich 
nicht parat, findest du jedoch sicher leicht über Google.

Gruß

DW

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.