Datum: 04.07.2008 12:22
Hallo Ich will in das Thema Assembler einsteigen mit Schwerpunkt/Richtung Microcontrollerprogrammierung. Ich suche daher ein gutes Buch über Assembler. Das Buch sollte möglichst umfassend und mit Beispielen sein. Es sollte auch als Nachschlagewerk noch verwendbar sein. Darf auch gerne auf Englisch sein. Ich suche nichts für den schnellen Erfolg alá "Assambler in 16 Tagen..." oder Bücher die einem sofort fertigen Code hinknallen, hauptsache man hat gleich seine ersten Programme (die man nicht versteht) am Laufen... Vielen Dank schonmal!
Datum: 04.07.2008 12:36
Hallo, da solltest du zuerst überlegen, welchen Mikrocontroller bzw. welche Architektur du benutzen möchtest. Assembler ist eine Systemeigene Sprache, dh. jede Controllerfamilie hat eigene Mnemoniken und Syntax. Auf jeden Fall unterscheiden sich Assemblersprachen verschiedener Systeme derart, dass es kein allgemeines Buch zu diesem Thema geben kann. Gruss, Edson
Datum: 04.07.2008 14:55
Hallo, nimm eine überschaubare Familie, deren Fallstricke sich in Grenzen halten. Ich würde z.B. die 8Bit-AVR-Reihe durchaus empfehlen. Vorteile aus meiner Sicht: linearer Adressraum, kein Bankswitching. Ports sind PushPull-Ausgänge oder eben Eingänge. Die internen Komponenten sind überschaubar abgegrenzt. Meine Meinung zu Assembler auf µC o.ä.: ich habe mit 6800 angefangen, habe 6510/6502 und Z80 programmiert und bin jetzt beim AVR gelandet. Alles nur Hobby, manchmal auch beruflich genutzte Einzelstücke. Assembler heißt für mich, daß man die konkrete Hardware kennen muß, also wissen muß, was eine CPU tatsächlich macht, was Peripherie wie Timer, IO, ADC usw. machen. Egal, ob es einzelne Bausteine sind oder eben im Chip gleich mit drin. Wenn man das halbwegs auf die Reihe bekommt, ist auch ein Umstieg nicht so schlimm. Das Problem ist ja weniger, die Mnemotik und Syntax zu lernen, da mault ein guter Assembler schon genug. Problem sit, zu verstehen, was die CPU und die Peripheriekomponenten können, damit man nach den richtigen Befehlen sucht. Dazu muß man eben erstmal wissen, welche Befehle ein µC überhaupt können muß und das sond eigentlich sehr wenige. Etwas Arithmetik (Subtraktion, Addition jeweils mit und ohne Übertrag), wenige logische Verknüpfungen (AND, OR, EOR, NOT), Speicherzugriffe (Laden und Speichern in meist mehreren Arten der Adressierung), bedingte und unbedingte Sprungbefehle. Damit bekommt man prinzipiell schon fast jede Aufgabe gelöst. Das Prinzip "Interrupt" ist dann das nächste wichtige Kapitel. Unterprogramme, Stackbenutzung, Multiplikationsbefehle usw. usw. sind dann nur die Sahnehäubchen, damit man obiges auch praktisch hinbekommt und es in den verfügbaren Speicher paßt. :) Gruß aus Berlin Michael
Datum: 04.07.2008 17:15
Achso ist das, danke schonmal so weit! Leider kann ich die Prozessorfamilie nicht frei Laune auswählen. Ich studiere an einer BA und wir haben bald das Thema Assemblerprogrammierung mit Freescale-Prozessoren. Um mich etwas zu entlasten wollte ich mir jetzt schon über den Sommer ein gutes Buch zulegen. Ich habe jetzt auch mal nach Büchern zu Freescale-Prozessoren geschaut aber da finde ich absolut nichts. Ist die Freescale-Architektur vielleicht identisch mit einer anderen und läuft damit unter deren Namen? Ich kenne mich da leider (noch nicht) aus.
Datum: 04.07.2008 17:50
http://wapedia.mobi/en/Freescale_68HC08 Mehr habe ich dazu auf die Schnelle auch nicht gefunden. @amiga Du hast vollkommen Recht. Für einen echten Einstieg ist es aber schon von Vorteil, sich mit Syntax und Mnemonik eines Assemblers bzw. Controllers eingehend zu befassen. Gruss, Edson
Antwort schreiben
Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.
Wichtige Regeln - erst lesen, dann posten!
- Suchfunktion und Betreffsuche benutzen - vielleicht gibt es schon einen ähnlichen Beitrag
- Aussagekräftigen Betreff wählen
- Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)
- Groß- und Kleinschreibung verwenden
- Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
- JPEG-Dateien (.jpg) nur für Fotos und Scans verwenden
- Schaltpläne, Screenshots usw. als PNG oder GIF anhängen
Formatierung (mehr Informationen...)
- [c]C-Code[/c]
- [avrasm]AVR-Assembler-Code[/avrasm]
- [pre]vorformatierter Text (z.B. Code in anderen Sprachen)[/pre]
- [math]Formel in LaTeX-Syntax[/math]
- [[Titel]] - Link zu Artikel