Bonsai Einführung Python Bonsai-Assembler Interpreter Übersetzungsschablonen Assemblerprogramme Compiler Maschinensprache Architektur Mikroprogrammierung Binäre Codierung Hardware Bau Simulation Baukasten debug 386-Assembler Betriebssystem ET-3400 Profi5E Glossar Util Literatur Holzcomputer Lehrplan Links
Pfad: Startseite / Fächer / Informatik / Material / Bonsai / ET-3400
Autor: mk
23.05.2007 16:58:58
3318
Heathkit ET-3400 Mikroprozessor Trainer

Das HSG besitzt mit dem Heathkit ET-3400 Mikroprozessor-Trainer ein Stück Computergeschichte. Der Computer verwendet den Motorola 6800 - Prozessor von 1975, der als sehr früher Mikroprozessor gilt.

Bild ET-3400

Beschreibung

Struktur des mc6800

Der Aufbau des Prozessors wird auf einer eigenen Seite beschrieben.

Betrieb

Kleines Additionsprogramm

LDA A 0030     ; A <-- [0030]
LDA B 0031     ; B <-- [0031]
ABA            ; A <-- A+B
STA A 0032     ; [0032] <-- A
NOP            ; no operation

0000  B6
0001  00
0002  30  Motorola: big endian!
0003  F6
0004  00
0005  31
0006  1B
0007  B7
0008  00
0009  32
000A  01
....
0030 03  (1310 = 0D16)
0031 04  (1710 = 1116)
0032 00  (3010 = 1E16)

Befehle des mc6800

Die Befehle werden auf einer eigenen Seite aufgelistet.

Links

Komplexeres Programm mit Nutzung von Betriebssystem-Routinen

bsp1

bsp1.s19
S1290000BDFCBC86012007D6F1CB10D7F148BDFE3ACE2F000926FD165D26EC8601DEF08CC10F26EA20DA??
S9030000FC

bsp1.s19, bsp2.s19

Analyse des Programms

Man sieht links das Maschinenprogramm, rechts das Assemblerprogramm.

Es folgen Erläuterungen zu den einzelnen Zeilen

Betriebssystem-Routinen

OUTCH - out character

OUTCH (FE3A) gibt ein Zeichen zur Anzeige aus. Die Adresse des Displays ist im Speicherplatz DIGADD (00F0,00F1) enthalten. In diese Routine kann bei OUTO (FE3C) eingetreten werden, wenn das Indexregister nicht aufbewahrt werden muss. Der Code für das anzuzeigende Zeichen muss im Akkumulator A vorliegen, wenn in die Routine eingetreten wird. Die Bits D7-D0 des Akkumulators A entsprechen den Segmenten DP,a-g. Das höchstwertige Bit ist der Dezimalpunkt und das niedrigwertigste Bit das Segment g.

Angenommen d. soll dargestellt werden: 1011 11012 = BD16 muss in den Akku, dann REDIS, um Anzeige ganz links zu erreichen, dann OUTCH zur Zeichenausgabe:

0000 86 BD       LDA A #$BD
0002 BD FCBC     JSR   REDIS
0005 BD FE3A     JSR   OUTCH
0008 20 FE       BRA   #$FE     ; relativer Sprung auf 0008, 000A-0010
Aufgabe

Teste das Programm. Verändere das Programm so, dass F dargestellt wird.

Material

Valid XHTML 1.0! lokal