Kurs programowania w asemblerze


Mapa pamięci

AdresOpis
0000:0000Tablica wektorów przerwań.
0040:0000Zmienne systemowe
xxxx:0000Część BIOS'u dostarczana ze zbioru IO.SYS.
xxxx:0000Procedury obsługi przerwań DOS'a
xxxx:0000Obszar zarezerwowany przez DOS: bufory, dane oraz instalowane procedury obsługi przerwań
xxxx:0000Rezydentna część procesora komend COMMAND.COM, około 4KB
xxxx:0000Programy typu TSR (rezydentne). Działanie takich programów składa się z trzech części:
  • uruchomienie właściwego programu, który kończy działanie pozostawiając swój kod w pamięci
  • sprawdzanie, czy został spełniony jakiś warunek jego wywołania
  • część właściwa, wykonująca różne czynności usługowe
xxxx:0000Aktualnie wykonujący się program
xxxx:0000Przenośna część COMMAND.COM. Zawiera procesor poleceń, dzięki niej widzisz napis C:\
A000:0000Pamięć obrazu karty EGA/VGA (64KB)
B000:0000Pamięć obrazu karty monochromatycznej, również karty Herkules (32KB)
B800:0000Pamięć obrazu CGA, również druga strona karty Herkules
C000:0000
do E000
Obszar przeznaczony dla systemu BIOS karty graficznej VGA (32KB)
C800:0000
do E000
Rozszerzenia BIOS'u, zawierające sterowniki dysku twardego, czy EGA-BIOS lub VGA-BIOS
E000:0000
do E000:FFFF
Część BIOS'u dotycząca komputerów klasy AT
F000:0000
do F000:FFFF
System BIOS (64KB)
F600:0000Interpreter BASIC'a
FE00:0000
do FFFF:FFFF
ROM-BIOS
PowyżejGórna pamięć.

Zmienne systemowe

AdresRozmiarOpis
0:04002Bazowy adres portu pierwszego złącza RS-232 (COM1)
0:04022Port COM2
0:04042Port COM3
0:04062Port COM4
0:04082Bazowy adres pierwszego złącza drukarki (LPT1)
0:040A2Port LPT2
0:040C2Port LPT3
0:040E2Port LPT4
0:04102Lista sprzętu w komputerze. Taka sama lista jest zwracana po przerwaniu 11H w AX
Bit 0: 0=Brak stacji dysków
Bit 1: 8087 koprocesor
Bity 2-3: Pamięć RAN płyty głównej 01=16K, 10=32K, 11=64K+
Bity 4-5: Aktywny tryb graficzny 00=można EGA (nie zawsze wiarygodne); 01=40-kolumn; 10=80 kolumn 11=TTL monochromatyczny
Bity 6-7: Całkowita liczba napędów; 00=1; 01-2; 10=3; 11=4;
Bit 8: Obecność DMA
Bity 9-11: Porty RS-232; 000=brak; 001=1 itd.
Bit 12: Obecność karty GAME
Bit 13: Drukarka szeregowa
Bity 14-15: Zainstalowane drukarki; 00=brak; 01=1; itd.
0:04121Błędy klawiatury
0:04132Całkowity rozmiar pamięci w KB (Taki jak po przerwaniu 12H w AX)
0:04152Zmienna przejściowo używana przy testowaniu błędów sprzętowych
0:04171Zmienna określająca stan klawiatury.
Bit 0: Prawy Shift wciśnięty
Bit 1: Lewy Shift wciśnięty
Bit 2: Ctrl wciśnięty (lewy lub prawy)
Bit 3: Alt wciśnięty (lewy lub prawy)
Bit 4: ScrollLock zapalony
Bit 5: NumLock zapalony
Bit 6: CapsLock zapalony
Bit 7: Stan Insert
0:04181Zmienna określająca stan klawiatury.
0: Lewy Ctrl wciśnięty
1: Lewy Alt wciśnięty
2: SysReq wciśnięty
3: Stan przerwy
4: ScrollLock wciśnięty
5: NumLock wciśnięty
6: CapsLock wciśnięty
7: Insert wciśnięty
0:04191Bieżąca wartość pseudo klawisza alt+klawisz numeryczny. Normalnie 0.
0:041A2Adres głowy bufora klawiatury
0:041C2Adres ogona bufora klawiatury
0:041E20HBufor klawiatury. Znajdują się tutaj 20H zapamiętanych klawiszy
0:043E1Napęd dyskowy potrzebuje rekalibracji (bit 0=A, bit 1=B, itd.)
0:043F1Silnik stacji dysków pracuje (bit 0=!, bit 1=N itd.)
0:04401Czas do wyłączenia zasilania. Przerwanie 8H wyłącza motor gdy =0
0:04411Kod błędu dyskowego. Taki sam jak ostatnio zwrócony przez przerwanie 13H
0:04427Obszar informacji dla kontrolera napędu dysku
0:04491Aktywny tryb graficzny
0:044A2Szerokość ekranu w kolumnach
0:044C2Wielkość pamięci obrazu (KB)
0:044E2Offset pamięci w stosunku do początku pamięci obrazu
0:045010HPołożenie kursora (8 par: kolumna, wiersz)
0:04602Kształt kursora (początek, koniec)
0:04621Numer aktywnej strony graficznej
0:04632Adres portu kontrolera graficznego 6845 (Patrz porty CGA)
0:04651Aktualna zawartość w kontrolerze 6845 CRT_MODE
0:04661Aktualna zawartość w kontrolerze 6845 CRT_PALETTE
0:04675Obszar danych magnetofonu lub POST (patrz Start Systemu)
0:046C4Liczba taktów zegara (taktuje co 55ms od startu)
0:04701Wskaźnik nadmiaru zegara (po 25 godzinach nieprzerwanej pracy)
0:04711Wskaźnik Ctrl+Break (gdy wciśnięty to ustawiony zostaje bit 7)
0:04722Wartość 1234H w tych komórkach oznacza, że trwa właśnie restart komputera po wciśnięciu Ctrl+Alt+Del)
0:04744Obszar kontrolny dyskietki lub dysku twardego AT
Liczba dysków twardych AT
0:04784Wartości czasowe złącza równoległego drukarki
0:047C4Wartości czasowe RS-232
0:04802Offset początku bufora klawiatury AT (zwykle 1EH)
0:04822Offset końca bufora klawiatury AT (zwykle 3EH)
0:04841Ilość wierszy w jednym znaku karty CGA
0:04852Ilość bajtów na 1 znak w karcie CGA
0:04871Różne informacje karty EGA, odpowiednie pola oznaczają:
0: 1=kursor włączony
1: 1=wyświetlanie monochromatyczne
2: 1=dozwolony zapis do pamięci ekranu
3: 1=EGA nie jest aktywna
5-6: pamięć RAM karty EGA (00=64K, 01=128K, 10=192K, 11=246K)
7: 1=ekran nie jest włączony
0:04881Różne informacje karty EGA
0-3: Stan przełączników na karcie EGA
4-7: Bity cech
0:04901AT Bity stanu dysku dla napędu 0
0:04911AT Bity stanu dysku dla napędu 1
0:04921AT Wskaźnik trwania operacji dyskowych dla napędu 0
0:04931AT Wskaźnik trwania operacji dyskowych dla napędu 1
0:04941AT Numer aktualnego cylindra dla napędu 0
0:04951AT Numer aktualnego cylindra dla napędu 1
0:04961Klawiatura AT bit 4=1 (10H) jeśli jest podłączona klawiatura 101 klawiszowa
0:04971Znacznik zamkniętej kluczem klawiatury AT (patrz przerwanie 15H funkcja 86H)
0:04984AT Adres wskaźnika opóźnienia użytkownika
0:049C4AT Mikrosekundy do końca czekania
0:04A01AT Wskaźnik opóźnienia użytkownika
1=zajęte; 80H=zgłoszenie; 0=zatwierdzone
0:04A17Zarezerwowane dla karty sieciowych AT
0:04A84Adres CGA(VGA) SAVE_PTR. Wskazuje na adres danych karty CGA
0:04F010HObszar komunikacji między różnymi programami
0:05001Status drukowania ekranu
0:05041Status Fantom dysku. W systemach o jednej stacji dysków odwołania do napędu B: są obsługiwane przez tą stację
0:051011HUżywane przez interpreter BASICA
0:05303Używane przez instrukcję MODE
F000:FFF05FAR JMP do rozpoczęcia POST
F000:FFF58Data wyprodukowania ROM BIOS w ASCI
F000:FFFC2Nieużywane
F000:FFFE1Typ komputera IBM (nie zawsze wiarygodne)
FFH=PC
FEH=XT lub przenośny PC
FDH=PC
FCH=AT
FBH=XT z 640 KB na płycie głównej
FAH=PS/2 Model 30
F9H=Klon PC
F8=PS/2 Model 80


  • Memory - Mapa pamięci komputera 21.9KB

Autor: Karol Wierzchołowski, opracowano: 12.01.2002 r. Wszelkie prawa zastrzeżone.
Kontakt

Jeśli chcesz się z nami skontaktować napisz na adres: info(at)binboy.org lub odwiedź nasz profil na Facebooku!

O Nas

Serwis binboy.org to kopalnia wiedzy dla wszystkich z branży IT, w szczególności dla programistów i webmasterów. To duży zbiór kursów programowania, tutoriali, darmowych ebooków, setki kodów źródłowych itp.

Bądź w kontakcie

Panel użytkownika

Zaloguj się do panelu użytkownika.
Nie masz konta? Zarejestruj się!
Zapomniałeś hasła?