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 - 26 - Prof. Dipl.-Ing. Komar<br />
Adresse bestehend aus Segment : Offset übergeben werden, wobei Segment ein Registername sein darf (CS, DS,<br />
ES oder SS) und Offset eine Hex-Zahl oder beides Hex-Zahlen. Die zweite Option ist eine Längenangabe, die<br />
festlegt, wieviele Bytes ausgegeben werden sollen. Die Angabe erfolgt durch ein ,,L“ gefolgt von einer Hex-<br />
Zahl. Diese Zahl darf nicht größer sein als ffff h abzüglich der aktuellen Offsetadresse. Nach Ausgabe einer<br />
kompletten Bildschirm- seite erfolgt keine Pause.<br />
Beispiele:<br />
D<br />
D 00ff<br />
D DS:100<br />
D 1cc2 :1234<br />
G (o) Befehl Führt ein Programm teilweise oder ganz aus und setzt Breakpoints<br />
Syntax: G [=Adresse] [Adr1] ... [Adr10 ]<br />
Das Kommando Go führt zur Ausführung des Programms ab der angegebenen Adresse. Werden keine<br />
optionalen Haltepunkte ( Adri ) angegeben, so läuft das Programm bis zum "Ende" (falls es terminiert).<br />
Das Debug-Programm streut dazu an den angegebenen Haltepunkten Unterbrechungsbefehle ein, welche beim<br />
Erreichen <strong>eines</strong> Haltepunktes oder beim Terminieren des Kommandos wieder entfernt werden. Beim Erreichen<br />
<strong>eines</strong> Haltepunktes wird jeweils die aktuelle Registerbelegung ausgegeben.<br />
Beispiel:<br />
–g = 100 106<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<br />
–<br />
R (egister ) Befehl Zeigt Registerinhalte an und erlaubt deren Änderung<br />
Syntax: R [Registername]<br />
Wird kein Registername eingegeben, werden alle Prozessorregister angezeigt. Außerdem wird der Maschinen-<br />
befehl angezeigt, der an der Adresse CS:IP steht. Wird ein Registername übergeben, wird der aktuelle Inhalt,<br />
gefolgt von einem Doppelpunkt (in der nächsten Zeile ) angezeigt. Jetzt kann Return gedrückt werden – dann<br />
wird der aktuelle Wert beibehalten - oder ein 16-Bit -Hex-Wert ( 0-ffff h) eingegeben werden. Das Register wird<br />
dann auf diesen Wert gesetzt. Eine Sonderstellung nimmt hier das Flagregister ein. Es wird nicht, wie alle<br />
anderen Register, hexadezimal angezeigt. Allen Bits wird entsprechend ihres Inhaltes ( 0 oder 1) eine<br />
Kurzbezeichnung zugeordnet (siehe Tabelle). Der dem Zustand entsprechende Kurzname muß auch bei einer<br />
manuellen Änderung eingegeben werden (mehrere Namen werden durch Leerzeichen voneinander getrennt).<br />
Beispiele:<br />
R<br />
R CS<br />
R F<br />
Name in Abhängigkeit des Zustandes des Flagregisters F :<br />
Flagname gesetzt gelöscht<br />
-Overflow (yes / no) OV NV<br />
-Direction (decrement/increment) DN UP<br />
-Interrupt (enable/disable) EI DI<br />
-Sign (negative/positive) NG PL<br />
-Zero (yes / no) ZR NZ<br />
-Auxiliary carry (yes / no) AC NA<br />
-Parity (yes / no) PE PO<br />
-Carry (yes / no) CY NC