6. Funktionseinheiten eines Computers / Mikrocomputers
6. Funktionseinheiten eines Computers / Mikrocomputers
6. Funktionseinheiten eines Computers / Mikrocomputers
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 - 27 - Prof. Dipl.-Ing. Komar<br />
Beispiel:<br />
–r<br />
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000<br />
DS=1092 ES=1092 SS=1092 CS=1092 IP=0100 NV UP EI PL NZ NA PO NC<br />
1092:0100 B800FF MOV AX,FF00<br />
–<br />
Soll ein Registerinhalt auf einen bestimmten Wert gesetzt werden, so geschieht dies z.B. für den Stacksegment<br />
( Register SS ) auf 200 h wie folgt:<br />
–r ss<br />
SS 1092<br />
:0200<br />
–<br />
S (earch) Befehl Sucht nach einer Kombination bestimmter Bytes im Speicher<br />
Syntax: 1.S <br />
2.S <br />
In beiden Fällen kann Adresse eine einzelne Hex-ZahI sein, dann wird DS als Segmentanteil vorausgesetzt und<br />
die Zahl dient als Offsetadresse, außerdem kann eine komplette Adresse bestehend aus Segment : Offset<br />
eingegeben werden, wobei Segment ein Registername sein darf (CS, DS, ES oder SS) und Offset eine Hex-Zahl<br />
oder beides Hex-Zahlen. Bei der Liste handelt es sich um eine Ansammlung von 8-Bit -Hex-Zahlen (0-ff h),<br />
getrennt durch ein Leerzeichen, oder um ASCII-Zeichen, die dann in Hochkommata " " gesetzt werden<br />
müssen.<br />
zu Syntax 1:<br />
Die Länge des zu durchsuchenden Speicherbereiches wird durch ein ,,L“ gefolgt von einer 16-Bit-Hex-Zabl<br />
( 0-ffff h ) angegeben, wobei die Zahl nicht größer als ffff h minus der angegebenen Offsetadresse sein darf.<br />
Beispiele:<br />
S 100 L200 01 02<br />
S 100 L200 0a 12 "A" "B" "ABCD"<br />
S DS:200 L280 0f ff<br />
S 0lff:80 L700 0c 07<br />
zu Syntax 2:<br />
Der Bereich ist ein 16-Bit-Hex-Wert (0 – ffff h ), der die Offsetadresse kennzeichnet, bis zu der gesucht werden<br />
soll. Beispiele:<br />
S 100 180 01 02<br />
S 100 200 0a 12 "A" "B" "ABCD"<br />
S DS:200 280 0f ff<br />
S 01ff:80 700 0c 07<br />
T (race) Befehl Führt einen oder mehrere Maschinenbefehle im Einzelschrittmodus aus<br />
Syntax: T [=Adresse] [Anz]<br />
Das Trace-Kommando führt das Programm ab der angegebenen Adresse schrittweise aus und listet nach jedem<br />
Kommando den aktuellen Inhalt aller CPU-Register (analog dem R-Kommando). Weiterhin wird der nächste<br />
auszuführende Befehl disassembliert und analog dem U-Kommando angezeigt.<br />
Es werden so "Anz" Befehle ( Anz ist hexadezimal anzugeben!) nacheinander ausgeführt. Fehlt die Angabe<br />
"Anz", so wird genau ein Befehl ausgeführt. Fehlt die Adresse, so wird der nächste Befehl (auf den CS:IP zeigt)<br />
ausgeführt.<br />
Beispiel:<br />
–t=100 2<br />
AX=FF00 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000<br />
DS=1092 ES=1092 SS=1092 CS=1092 IP=0100 NV UP EI PL NZ NA PO NC<br />
1092:0103 894F12 MOV [BX+12],CX<br />
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000<br />
DS=1092 ES=1092 SS=1092 CS=1092 IP=0100 NV UP EI PL NZ NA PO NC<br />
1092:0106 52 PUSH DX