| STATYSTYKI |
Od 06.09.2000
|
Optymalizacja: 1024x768, IE5 |
|
| Porty |
Porty pozwalają wymieniać informacje(dane) z urządzeniami takimi jak klawiatura,karta graficzna, drukarka itp.
Do komunikacji z tymi urządzeniami wykorzystujemy tzw. instrukcje wejścia/wyjścia:
- instrukcje dzięki którym wysyłamy wiadomości do portów to:
OUT - jest to instrukcja wymagająca dwóch parametrów,
OUTSB - jest to bardziej "zaawansowana" wersja instrukcji OUT
wysyła ona wartość jednego bajtu spod DS:[SI] do portu
zawartego w DX, następnie zmienia wartość SI o wielkość
wysyłaną (1 Bajt SI=SI+1, 2 Bajty SI=SI+2 lub 1 Bajt SI=SI-1,
2 Bajty SI=SI-2 - w zależnosci od znacznika DF) razem
z instrukcją REP jest stosowana przy seryjnym wysyłaniu
danych do portów (np. ustawianie palety),
OUTSW - wysyła słowo do portu DX spod DS:[SI],
OUTSD - to co wyżej ,ale zostaje wysłane podwójne słowo.
np.
| ... | |
| MOV DX,3c8h | ;załadowanie do DX numeru portu, |
| MOV AL,0 | ;do AL wartość którą będziemy wysyłać |
| OUT DX,AL | ;wysłanie do portu o numeże DX wartości AL |
| ... | |
W pokazany wyżej sposób możemy rozpocząć ustawianie palety kolorów,
w przypadku gdy numer portu jest mniejszy lub równy FFh możemy podać
w instrukcji OUT jego natychmiastową wartość.
- instrukcje pobierające wartości z portów:
IN - wymaga także dwóch operandów i pobiera wartość z portu do AL lub AX
(argument podawane są w odwrotnej kolejności w stosunku do instrukcji OUT).
np.
| ... | |
| IN AL,51h | ;pobranie z portu 51h bajta do AL |
| IN AX,DX | ;pobranie z portu DX słowa do AX |
| ... | |
INSB - pobiera bajt z portu DX do ES:[DI] i zmienia DI jak w przypadku OUTSB,
INSW - pobiera słowo z portu DX do ES:[DI] i zmienia DI jak w przypadku OUTSW,
INSD - tak jak w przypadku powyższych dwóch instrukcji, ale DI jest zmieniane o 4.
©Copyright by FiXER 2001
<<
|
|