18.12.2012 Aufrufe

6. Funktionseinheiten eines Computers / Mikrocomputers

6. Funktionseinheiten eines Computers / Mikrocomputers

6. Funktionseinheiten eines Computers / Mikrocomputers

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Rechnergrundlagen Teil 2 - 25 - Prof. Dipl.-Ing. Komar<br />

7.2.1 DEBUG-Beschreibung<br />

DEBUG wird, wie andere DOS-Kommandos auch, durch Eingabe des Namens aufgerufen:<br />

DEBUG <br />

oder<br />

DEBUG name.ext <br />

Im zweiten Fall wird der Name (ggf mit Pfadangabe und Erweiterung) des Programms eingegeben, das getestet<br />

werden soll. DEBUG meldet sich daraufhin mit einem Bindestrich ,,-,,. Dieser Strich bedeutet, daß DEBUG auf<br />

die Eingabe von Befehlen wartet. Alle DEBUG-Befehle bestehen aus einem Schlüsselbuchstaben und ggf<br />

Optionen. Die häufigsten und wichtigsten DEBUG-Befehle sind A(ssemble), D(ump) , E (nter), G(o), I (n),<br />

L (oad ), N (ame), O (ut), P(roceed) , Q(uit), R(egister), S(earch), T(race), U(nassemble) und W (rite) in<br />

alphabetischer Reihenfolge.<br />

Es ist zu beachten ist, daß alle Zahlen ausschließlich hexadezimal eingegeben werden müssen.<br />

Eine Eingabeoption, die nicht zwingend notwendig ist, wird in eckigen Klammern [ ] dargestellt, unbedingt<br />

notwendige Optionen werden in spitze Klammem < > gesetzt.<br />

Bei einem Eingabefehler erzeugt DEBUG eine Fehlermeldung mit einem Pfeil, der auf die Stelle des Fehlers<br />

zeigt. Für den Einsatz von DEBUG ist die Kenntnis der Adressierungsarten des 8086-Prozessors notwendig.<br />

A (ssemble) Befehl Dient zur Eingabe von Assemblerbefehlen<br />

Syntax: A [Adresse]<br />

Wird A ohne Option eingegeben, wird der folgende Assemblercode an der aktuellen Adresse CS:IP abgelegt. Als<br />

Option kann eine einzelne Offsetadresse eingegeben werden (dann wird als Segment CS vorausgesetzt) oder eine<br />

komplette Adresse bestehend aus Segment : Offset, wobei Segment ein Registername sein darf (CS, DS, ES oder<br />

SS) und Offset eine Hex-Zahl oder beides Hex-Zahlen. DEBUG zeigt anschließend die aktuelle Adresse für den<br />

nun einzugebenden Assemblerbefehl an und wartet auf die Eingabe.<br />

Beispiele für Aufruf:<br />

A<br />

A 100<br />

A DS:100<br />

A 1ffa:1234 allen Beispielen folgt dann die Eingabe von Maschinenbefehlen .<br />

Ausstieg aus A: durch statt einem weiterem Maschinenbefehl.<br />

Beispiel:<br />

–a l00<br />

10BB:0100 mov ax,ff00<br />

10BB:0103 mov [bx+12],cx<br />

10BB:0106<br />

–<br />

U (nassemble) Befehl Disassembliert einen Speicherbereich<br />

Syntax: U [Adresse] [Bereich]<br />

Ab der angegebenen Adresse versucht das Programm DEBUG den Code in Assembleranweisungen zurück zu<br />

übersetzen. Als Bereich kann z. B. u 100 200 angegeben werden.<br />

Beispiel:<br />

–u l00<br />

10BB:0100 B800FF MOV AX,FF00<br />

10BB:0103 894F12 MOV [BX+12],CX<br />

. . . .<br />

10BB:0106<br />

D (ump) Befehl Zeigt Speicherinhalte an<br />

Syntax: D [Adresse] [L Länge ]<br />

Gibt man D ohne Option ein, wird ein Speicherbereich beginnend mit der Offsetadresse 100h und der Segmentadresse,<br />

die bei Start von DEBUG vorlag, ausgegeben. Wird als Option nur eine Hex-Zahl übergeben, gibt<br />

DEBUG eine kleinen Speicherblock ab Adresse DS:Hex-Zahl aus. Weiterhin kann als Option eine komplette

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!