Forum: Mikrocontroller und Digitale Elektronik Assembler Anleitung Vorschläge


von Martin Z. (Gast)


Lesenswert?

Könnte mir jemand irgenwelche gute online Anleitungen zum Assemler
programmieren vorschlagen? Ich suche nicht nach Anleitungen um als
Anfänger Assembler zu lernen sondern eher wie man 'gut' Assembler
programmiert, also so Tips und Tricks um effizienten und übersichlichen
Code zu schreiben. Also auch zum Beispiel wie Code aus C implementiert
wird.
Konkret will ich den AT89C5131 von Atmel programmieren, also wären
Anleitungen mit dem 8051 Befehlssatz am besten, aber wenn jemand sehr
gute Anleitungen zu einem anderen Befehlssatz mitteilen könnte wäre das
auch super. Vielen Dank.
Martin

von Andi K. (Gast)


Lesenswert?

Hier solltest Du fündig werden:
http://www.8052.com

Und hier der Befahlssatz, sogar mit seutscher Erklärung:
http://www.mikrocontroller.net/attachment.php/195522/8051+Instructions.pdf

Das mit der Effizienz ist so eine Sache.
Das hängt von jedem selber ab und wird mehr durch Erfahrungswerte und
der Zeit bestimmt.
Man sollte halt möglichst irgendwelche Warteschleifen vermeiden, sich
nach und nach Subs oder Macros für spezielle Dinge zusammenschreiben
die man später wieder verwenden kann.
Die Effizienz hängt auch oft vom speziellen Fall ab und kann Dir im
Allgemeinen niemand beibringen.

MfG
Andi

von Ralf (Gast)


Lesenswert?

Hi Martin,

1. Den Befehlssatz gibt es auf jeder Hersteller-Seite meist als PDF zum
Download. Er ist für jeden 8051er identisch.

2. Der Ansatz des guten Programmierens hängt von deiner Erfahrung ab.
Klar, das gesamte Programm in eine Routine zu schreiben ist wie bei C
auch ein schlechter Ansatz. Also für jede Aufgabe eine eigene Routine.
Parameter lassen sich beim 8051er sehr gut über die Register R0-R7 an
andere Routinen weiterleiten.

Und ganz wichtig ist vor allem, wirklich jeden Assembler-Befehl
eindeutig begriffen zu haben, damit du effektiven Code schreibst.
Mit steigender Erfahrung in Assembler wirst du dann auch lernen, wie
man  durch das Anwenden der richtigen Befehle "Tricksen" kann.

3. Und das Aufrufen von C-Routinen aus Assembler und umgekehrt hängt
von deinem Compiler/Linker/Assembler ab.

Wenn ich dir dazu einen Tip geben darf, nimm den KEIL C51, der kann in
der Demo 2kB. Dazu gibt es zwei Bücher von Michael Baldischweiler
(www.c51.de), kosten aber ca. 50 Teuro das Stück. In diesen Büchern
steht, wie man das macht mit den ASM <-> C Aufrufen.

Zusätzlich kannst du im Web mal nach dem C51-Primer suchen, das ist ein
PDF (leider in angelsächsisch), welches auch noch mal gute Tipps/Tricks
zum C51 hat.

Ich will dir nicht verschweigen, dass der Keil C51 in der Vollversion
bis zu 2600 Euro kostet.

Alternativ gibt es noch den C51-Compiler der Firma Wickenhäuser, der
hat in der Demo 8kB(!) und kostet etwa 110 Euro in der Vollversion, ist
aber nicht ganz so komfortabel wie der Keil C51. Wickenhäuser hat auch
mal behauptet, dass sie weitaus kleineren Code erzeugen als Keil, dazu
kann ich aber keine Aussage machen.

Hoffe ich konnte dir weiterhelfen.

Gruß Ralf

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.