DV3-Info
Start-Deutsch
Ergebnisse
Assembler und DV3
Downloads!
Mailing-List!
Thanks to...
Links!
Assembler und DV3

Kapitel 2

Zur Zeit kennen wir die Adresse der Routine nicht, die aufgerufen wird, wenn man mit dem Stift das App.-Symbol im Menü des DV3 aktivieren möchte.
Deshalb ist momentan die einzige Möglichkeit, unsere selbstgeschriebenen Assembler-Programme auszuprobieren, die Datei NPLv111.bin zu verändern.
Die Textausgaben zu verändern, wie in Kapitel 1 erklärt, zeigt nur, daß es grundsätzlich möglich ist, die Datei zu verändern.
Wir können aber auch Teile des Assembler-Codes verändern, ohne die Grund- funktion der Datei selbst zu beeinflussen.
Und wir können die Datei als einen “Container” für unsere eigenen Assembler- Programme verwenden !

Vorbereitungen :
Kopiert den Disassembler SM6KDASM.exe und die Datei NPLv111.bin in ein gemeinsames Verzeichnis. Startet im MS-DOS-Modus den Disassembler mit der Befehlsfolge :
SM6KDASM -b 820000 NPLv111.bin >NPLv111.asm (+ Enter-Taste).
Damit wird eine neue Datei NPLv111.asm erstellt, die z.B. mit WordPad be- trachtet und formatiert werden kann (empf. Courier 15cpi).
Erstellen wir einen Ausdruck der ersten 3 Seiten und sehen sie uns genauer an :
Das Listing beginnt mit Adresse 820000h. Hierbei handelt es sich um die tat- sächliche Speicheradresse im DV3, an der das Programm abgelegt wird. 82h gibt ein bestimmtes Segment im Speicher an und innerhalb dieses Segmentes startet das Programm an Adresse 0000h.
Wie wir in Kapitel 1 gesehen haben, wird die Segmentadresse 82h vom Hex- editor nicht berücksichtigt. Das macht aber nichts. Wir müssen nur beachten, daß der Inhalt, der vom Hexeditor z.B. an der Adresse 007Eh angezeigt wird, derselbe ist, der vom Disassembler an der Adresse 82007E gezeigt wird !

Wie ihr euch erinnert, zeigte der Hexeditor neben den Text-Passagen lediglich wirre Buchstaben und Zeichen. Das liegt daran, daß er jegliche Codes als ASCII-Codes interpretiert, die einen standardisierten Zeichensatz darstellen.
Der Disassembler versucht hingegen, die gleichen Codes als SM6010 Maschi- nen-Code (=Assembler-Code) zu interpretieren und erstellt daher ein Listing, welches anhand Kapitel 8 “Instruction set” des SM6010 Instruction Manual nachvollzogen werden kann.
Andererseits produziert der Disassembler Fehler, wenn er auf Code trifft, der tatsächlich Text- und nicht Maschinen-Code darstellt.
Deshalb solltet ihr auf dem Ausdruck die Adressen 82007Eh bis 8200E2h und 8201B4h bis 8201CEh als Textabschnitt markieren.

    Ergebnis :
    1. Wir haben den Disassembler angewendet und gesehen, daß er Assembler-Code klar interpretieren kann aber keinen Text-Code.
    2. Wir haben für die weitere Untersuchung des Programms  NPLv111.bin im nächsten Kapitel ein Assembler-Listing erstellt !

Anmerkung: Wie man sieht, sind o.g. Adressangaben mit einem “h” ge-  kennzeichnet. Das bedeutet, daß diese Zahlen im hexadezimalen Zahlen-  system notiert sind. Dies trifft auch auf alle anderen Zahlen im Assembler-  Listing zu.
Innerhalb des Kurses werden alle nötigen Erklärungen gegeben, um alle  gezeigten Beispiele verstehen und selbst ausprobieren zu können. Es wird   aber empfohlen, sich im Mathematik-Buch mit den Grundlagen des hexa-   dezimalen Zahlensystems vertraut zu machen. Ebenso hat sich eine ASCII-  Code Tabelle, in der die ersten 256 Zahlen sowohl dezimal als auch hexa-   dezimal angegeben werden, als sehr hilfreich erwiesen !

[DV3-Info] [Start-Deutsch] [Ergebnisse] [Start-Englisch] [Results]