BT2k
|
Mikrocontroller IV
Der Assembler
TASM der Assembler
Es ist natürlich sehr mühsam jedes Programm auf die bis hier beschriebene Art zu erstellen. Ein Programm, dass die Suche in der Befehlstabelle übernimmt und die entsprechenden Hex-Bytes erzeugt, nennt man Assembler. Das Shareware-Programm TASM tut genau das. Das Programm unterstützt sogar mehrere Prozessortypen, in dem es einfach auf eine andere Befehls-Tabelle zugreift. Aber leider handelt es sich um ein pures DOS-Programm und arbeitet aus der sogenannten Kommandozeile (DOS-Fenster) mit Übergabeparametern. Entpacken Sie die Datei "tasm.zip" (180K) in ein Verzeichnis C:\TASM.
.org 8100H
MOV A,#85
MOV 0E8H,A
ende LJMP ende
.end |
Quelltext erstellen
Mit einem beliebigen Texteditor, z.B. der Windows-Editor, wird der folgende Quelltext geschrieben, der das gleiche Programm erzeugen soll. Damit das Programm an die Adresse 8100h assembliert wird, erfolgt die Anweisung .org 8100H. Mit dem Schlüsselwort .end wird das Ende des Quelltextes markiert. |
Die Kommandozeile
Dieser Quelltext wird nun als Datei "C:\TASM\0.ASM" abgespeichert. Aus einem DOS-Fenster im Verzeichnis C:\TASM kann nun der Assembler, wie rechts dargestellt, aufgerufen werden. Dabei wird die Datei "0.ASM" mit der Tabelle des 8051 (-51) übersetzt und eine Binärdatei (-b) erzeugt. Die Binärdatei ist dann "0.OBJ". Ausserdem wird eine List-Datei "0.LST" erzeugt, die als Text-Datei mit jedem geeigneten Programm angezeigt werden kann. |
tasm -51 -b 0.asm |
Generiertes Listing
Rechts steht die ausgegebene List-Datei "0.LST", die vom Assembler erzeugt wurde. Es wurde genau das gleiche Ergebnis erzeugt, aber wesentlich komfortabler. |
0001 8100 .org 8100H
0002 8100 74 55 MOV A,#85
0003 8102 F5 E8 MOV 0E8H,A
0004 8104 02 81 04 ende LJMP ende
0005 8107 .end
tasm: Number of errors = 0 |
Binärdatei übertragen
Die erzeugte Binärdatei "0.OBJ" ist genau 7 Bytes lang und enthält die Maschinenanweisungen. Nun wird der dritte Button im Excel-Blatt "SiosTasm" benötigt. Wird "Programm 0.obj Übertragen" betätigt, so wird die Binärdatei "C:\TASM\0.OBJ" in den Speicherbereich des Sios übertragen. Mit "Speicher auslesen" erhält man Hex-Dump und Disassembler-Listing. Mit "Programm Start" wird das Maschinenprogramm ausgeführt. |
|