|
|
|
|
|
|
|
|
|
Der Computer |
||
|
.. ein Programmlauf |
||
|
|
||
|
|
|
|
|
|
|
|
Zeile |Maschinencode | Assemblersprache
|Adr |Daten: | Label |Bef | Parameter ; Kommentar
-----------------------------------------------------------------
1 00000 BA 06 04 | main: MOV DX, 0604h ; Eingabetor
2 00003 EC | IN AL, DX ; .. lesen
3 00004 34 0F | XOR AL, 0Fh ; XOR-Maske
4 00006 BA 06 05 | MOV DX, 0605h ; Ausgabetor
5 00009 EE | OUT DX, AL ; .. schreiben
6 0000A EB F4 | JMP main ; Sprung
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
So wie an den zwei obigen Maschinenbefehlen geschildert, setzt die CU auch mit den anderen Maschinenbefehlen ihre Arbeit fort .. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1) Das ist bei ® intel 80186 CPUs sicher nicht der Fall, denn die Speicher 0-1023 haben hier eine besondere Aufgabe. Hier befinden sich die Software-Interruptvektoren der CPU. Im Beispiel möge es aber so sein. |
|
|
|
|
|
|
|
2) Dieser Vorgang wurde bei der Beschreibung der beiden Beispielen nicht berücksichtigt. Es ist aber tatsächlich so, dass nach jedem vollständig abgearbeiteten Maschinenbefehl die Interrupleitungen geprüft werden. Wird ein Interrupt erkannt, so speichert die CU die momentane Adresse des Adresszeigers auf dem Stack und startet das, dem jeweiligen Interrupt zugeordnete Programm. |
|
|
|
|
|
|
|
|
|
.de