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 - 50 - Prof. Dipl.-Ing. Komar<br />

Interrupt 14h, Funktion 03h Serielle Schnittstelle: Status erfragen<br />

Fragt den Status der seriellen Schnittstelle und des evtl. angeschlossenen Modems ab.<br />

Eingabe AH = 03h<br />

DX = Nummer der seriellen Schnittstelle (die erste serielle Schnittstelle trägt die Nummer 0)<br />

Ausgabe AH = Status der seriellen Schnittstelle, siehe Funktion 00h<br />

AL = Modem-Statusregister, siehe Funktion 00 h.<br />

Diese Funktion sollte immer vor Aufruf der Funktion 02h (Zeichen empfangen) aufgerufen werden, um festzustellen, ob ein<br />

Zeichen zum Empfang bereit steht. In diesem Fall ist das Bit 0 im AH-Register 1.<br />

Interrupt 14h, Funktion 05h Kontrolle der seriellen Schnittstelle ( ab dem PS/2 – BIOS )<br />

Unterfunktion 00 - Modem Control Register lesen<br />

Aufruf: AH = 05h<br />

AL = 00h<br />

DX = Nummer der seriellen Schnittstelle<br />

Rückgabe: AH = Status der seriellen Schnittstelle, siehe Funktion 00<br />

AL = Modem-Statusregister , siehe Funktion 00<br />

BL = Modem-Control-Register<br />

Bit 7 – 5 reserviert (Null zurück)<br />

Bit 4 = 1, Loopback-Kontrolle =Selbsttest. Gesendete Zeichen als Input zurück<br />

Bit 3 = 1, OUT2 aktiv = es werden Interrupts generiert<br />

Bit 2 = 1, OUT1 aktiv<br />

Bit 1 = 1, RTS aktiv = PC will ein Zeichen an das Modem senden<br />

Bit 0 = 1, DTR aktiv = PC ist bereit<br />

Unterfunktion 01 - Modem Control Register setzen<br />

Aufruf: AH = 05h<br />

AL = 01h<br />

DX = Nummer der seriellen Schnittstelle<br />

BL = Modem-Control-Register setzen, siehe Funktion 05h, Unterfunktion 00h<br />

Rückgabe: AH = Status der seriellen Schnittstelle, siehe Funktion 00<br />

AL = Modem-Statusregister , siehe Funktion 00<br />

Interrupt 16 h (BIOS) Tastatur<br />

Interrupt 16h, Funktion 00h Tastatur: Zeichen auslesen<br />

Die Funktion liest ein Zeichen aus dem Tastaturpuffer aus. Ist dort kein Zeichen abgespeichert, wartet die Funktion, bis ein<br />

Zeichen eingegeben wurde. Das ausgelesene Zeichen wird aus dem Tastaturpuffer entfernt.<br />

Eingabe AH = 00h<br />

Ausgabe AL = 0: Erweiterter Tastaturcode, in diesem Fall:<br />

AH = erweiterter Tastaturcode<br />

0: Normale Taste betätigt, in diesem Fall:<br />

AL = ASCII-Code der Taste<br />

AH = Scan-Code der Taste<br />

Während der ASCII-Code <strong>eines</strong> Zeichens unabhängig von der Tastatur definiert ist, gilt der Scan-Code nur für den Typ von<br />

Tastatur, die an den PC angeschlossen ist.<br />

Der Inhalt der Register CX, DX, SI, DI, BP und der Segmentregister wird durch diese Funktion nicht verändert. Der Inhalt<br />

aller anderen Register kann verändert werden.<br />

Interrupt 16h, Funktion 01h Tastatur: Zeichen vorhanden?<br />

Diese Funktion stellt fest, ob ein Zeichen im Tastaturpuffer enthalten ist. Ist dem so, liefert sie dieses Zeichen an die<br />

aufrufende Funktion zurück. Das Zeichen wird allerdings nicht aus dem Tastaturpuffer entfernt, so daß es durch nochmaligen<br />

Aufruf der Funktion 1 oder 0 erneut ausgelesen werden kann. In jedem Fall kehrt d ie Funktion sofort nach ihrem Aufruf in<br />

das aufrufende Programm zurück.<br />

Eingabe AH = 01h<br />

Ausgabe Zero -Flag = 1: Kein Zeichen im Tastaturpuffer<br />

Zero -Flag = 0: Zeichen vorhanden, in diesem Fall:<br />

AL = 0: Erweiterter Tastaturcode, in diesem Fall:<br />

AH = Erweiterter Tastaturcode<br />

AL 0: Normale Taste, in diesem Fall:<br />

AL = ASCII-Code der Taste<br />

AH = Scan-Code der Taste

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!