Assembler Programm < Assembler < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Hallo Leute,
ich habe eine Aufgabe mit einer Lösung vor mir und mir ist bei der Lösung etwas nicht klar. Und zwar:
Schreiben Sie Programme in MC68000-Assembler, die die folgenden Algorithmen ausführen.
Do-While-Schleife:
Initialisiere Variable P mit Hexadezimal $10000
Wiederhole
Lösche die Speicherstelle auf die P zeigt
Solange P < $11000
Als Lösung habe ich:
1. START ORG $1000
2. P DC.L $10000
3. MOVE.L P,A0
4. LOOP CLR (A0)+
5. CMP.L #$11000,A0
6. BNE LOOP
7. TRAP #15
8. END START
1. ?
2. Initialisiert P mit $10000
3. Schreibt den Wert von P in A0
4. Löscht den Wert auf den A0 zeigt
5. vergleicht den Wert von A0 mit $11000
6. Wenn gleich dann zum nächsten Befehl, sonst zurück zu LOOP
7. Stopt die Simulation
Was ich nicht verstehe ist wozu die erste Zeile da ist??
Und dann warum in der 7 Zeile trap #15 ?? Kann mir jemand den Befehl erklären und warum #15 ?? Im Internet finde ich nichts.
Danke!!
|
|
|
|
Hallo Prinzessin83,
Zum TRAP #15 habe ich folgende Seite gefunden. Die erste Zeile sagt dem Assembler ab welcher Basisaddresse dein Programm im RAM beginnen soll.
Viele Grüße
Karl
|
|
|
|
|
Hallo Karl,
danke für die Antwort.
> Die erste Zeile sagt dem Assembler ab welcher Basisaddresse dein Programm im RAM beginnen soll.
Spielt es eine Rolle ab welcher Basisadresse das Programm im Ram beginnt?
Gibt es auch eine andere Möglichkeit als trap #15 das Programm zu beenden?
Und warum wird der Wert zuerst in P und dann in A0 geladen?
Danke!!
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 10:07 Di 21.06.2005 | Autor: | DAB268 |
Hi.
Es kann eine Rolle spielen. Bei uns in der Uni haben wir ein sogenanntes ECB-Board dort werden die assemblierten Werte erst in den Ram geschrieben, welcher ab der Adresse 1800 anfängt. Danach kopiert man diese ins EPROM, welches ab der Adresse 0800 beginnt.
Desweiteren kann es für Unterprogramme eine Rolle spielen. Diese kannst du dann später im RAM starten, falls dein Programm z.B. den Platz zwischen Programm und Unterprogramm während des Ablaufes belegt.
MfG
Christian
|
|
|
|