assembler86 6

assembler86 6



9. Wykorzystanie procedur systemowych w programach użytkowych

Mikrokomputery klasy IBM PC/XT/AT podobnie jak i inne komputery osobiste, posiadają oprócz pamięci typu RAM także pamięć stałą EPROM, w której są zapisane programy (procedury) będące pewnego rodzaju pośrednikiem między systemem operacyjnym a sprzętem, który może być zaprojektowany i skonfigurowany różnie przez producentów. Zespół tych programów jest nazywany BIOS (ang. basie input/oiitput system). Jednym z podstawowych kryteriów zgodności danego komputera z komputerem IBM PC jest pełna realizacja wszystkich procedur BIOS wywoływanych za pośrednictwem rozkazów przerwań programowych INT, a także przerwań sprzętowych. Procedur tych nie należy wywoływać stosując adresy bezwzględne, bowiem mogą być one różne dla danej procedury w różnych modelach nawet tego samego komputera. Rozszerzeniem procedur BIOS-u zawartych w pamięci stałej jest plik dyskowy IBMBIO.COM wczytywany do pamięci komputera w chwili inicjacji systemu.

Jak już opisano w poprzednich rozdziałach, jest możliwe rozróżnienie (identyfikowanych przez numer) 256 przerwań. Tablica wektorów przerwań jest umieszczona w najniższym obszarze przestrzeni adresowej i zawiera 32-bilowe logiczne adresy procedur obsługi przerwań. W mikrokomputerach klasy IBM PC/XT/AT przyjęto następujące (wynikające po części z zastosowanego sprzętu) przyporządkowanie funkcji poszczególnym przerwaniom

INT 0-7 przerwania związane z jednostką centralną (CPU),    *1

INT 8-FH przerwania sprzętowe,

INT 10H-1FH przerwania programowe, realizujące wywołania procedur podstawowej wersji BIOS-u,

INT 20H-3FH przerwania programowe wykorzystywane przez lunkcje MS-DOS,

INT 40H-41H, INT 46H przerwania związane z pamięciami dyskowymi,

INT 42H przerwanie wykorzystywane przez kartę EGA,

INT 43H wskaźnik parametrów inicjujących,

INT 60H-6FH przerwania programowe do wykorzystania w programach użytkowych, INT 70H-77H dodatkowe przerwania sprzętowe w IBM AT,

9.1. Przerwania sprzętowe i programowe ROM BIOS


INT 78H-FFH nie używane.

Ponieważ wektory przerwań są zlokalizowane w obszarze pamięci RAM, w sposób prosty można zmienić obsługę przerwania umieszczając odpowiedni program w dowolnym miejscu pamięci operacyjnej i zmieniając adres w tablicy wektorów. Sposób ten jest wykorzystywany w prawie wszystkich firmowych programach dostępnych na rynku. W kolejnych podrozdziałach zebrano najważniejsze informacje dotyczące dostępnych funkcji BIOS-u i procedur systemu operacyjnego MS-DOS. Pozwalają one na dosyć swobodne wykorzystywanie ich we własnych programach użytkowych, umożliwiają także analizowanie programów publikowanych w wielu czasopismach oraz podręcznikach. Wywoływanie procedur systemowych jest możliwe także w prosty sposób z programów napisanych w językach wysokiego poziomu, jak np. Turbo Pascal, Turbo C. Ponieważ do realizacji wszystkich możliwych funkcji jest potrzebna znacznie większa liczba odwołań aniżeli 255 (liczba rozróżnialnych przerwań), przyjęto regułę, że z danym przerwaniem jest związanych wiele różnych funkcji przypisanych jednemu konkretnemu typowi urządzenia. Właściwą funkcję określa się kodem umieszczonym w rejestrze AH. Pozostałe rejestry mogą służyć do przekazywania innych niezbędnych parametrów wejściowych do wywoływanej procedury oraz przekazywania parametrów wyjściowych z procedury do programu wywołującego. Przyjęto, że adresy odwołań do pamięci powinny być umieszczane w rejestrach BX i ES. Stan wszystkich rejestrów z wyjątkiem AX, jest odtwarzany przy powrocie do programu wywołującego.

9.1. Przerwania sprzętowe i programowe ROM BIOS

Przyporządkowanie funkcji realizowanych przez procedury ROM BIOS poszczególnym numerom przerwań.

Przerwania związane z jednostką centralną (INT 0-7)

INT 0 - dzielenie przez zero (źródłem przerwania jest procesor).

INT 1 - praca krokowa (ang. trap), źródłem przerwania jest procesor.

INT 2 - przerwanie niemaskowalne NMI, w mikrokomputerach klasy IBM PC/XT/AT jest generowane w przypadku błędu parzystości.

INT 3 - punkt kontrolny, wstrzymania (źródłem jest rozkaz INT).

INT 4 - nadmiar przy operacjach arytmetycznych (źródłem jest rozkaz INTO).

INT 5 - dla procesorów 80186,80286,80386 źródłem jest rozkaz BOUND.

INT 6 - dla procesorów 80186, 80286, 80386 zgłoszenie nielegalnego kodu rozkazu dla procesorów 8086/8088 przerwanie maskowalne (INTR) z numerem wektora na magistrali.

INT 7 - dla procesora 80186 źródłem jest rozkaz ESC; dla procesorów 80286, 80386 zgłoszenie niedostępności koprocesora.

INT 5 - żądanie wydruku zawartości ekranu monitora; adres procedury uaktywnianej jest przywołany po naciśnięciu klawisz)' Shift-PrtSc. W trybie alfanumerycznym odpowiednia procedura jest zawarta w ROM BIOS, w przypadku graficznej kopii ekranu program o nazwie GRAPHICS jest ładowany z dysku.


Wyszukiwarka

Podobne podstrony:
assembler?86? 6 252    9. Wykorzystanie procedur systemowych w programach użytkowyc
assembler?86? 7 234 9. Wykorzystanie procedur systemowych w programach użytkowych Przerwania sprzę
assembler?86? 8 236    9. Wykorzystanie procedur systemowych w programach użytkowyc
assembler?86? 9 238    9. Wykorzystanie procedur systemowych w programach użytkowyc
assembler?86? 0 240 9. Wykorzystanie procedur systemowych w programach użytkowych A < 2 > -
assembler?86? 1 242 9. Wykorzystanie procedur systemowych w programach użytkowych Wywołanie rezydu
assembler?86? 2 244 9. Wykorzystanie procedur systemowych w programach użytkowych Program użytkowy
assembler?86? 4 248 9. Wykorzystanie procedur systemowych w programach użytkowych adres pola FCB,
assembler?86? 5 250 9. Wykorzystanie procedur systemowych w programach użytkowych numer kanału. Je
assembler?86? 7 254 9. Wykorzystanie procedur systemowych w programach użytkowych • Przykład ilust
assembler?86? 3 246 9. Wykorzystanie procedur systemowych w programach użytkowych 06H - bezpośredn
Zrozumiec Assembler3 Zrozumieć Asembler Taki system był używany na komputerach IBM PC oraz XT. Komp
assembler?86? 6 192 7. Wybrane techniki programowania to wydzielony fragment pamięci operacyjnej (
Z ŻAŁOBNEJ KARTY 317 na mikrokomputerach klasy IBM, w sieci eksploatowanej pod kontrolą systemu NOVE
50 -lecie Polskiej Radiolokacji System bazował na komputerach kompatybilnych z IBM PC/386 i podwójne
12458 skanuj0177 (8) Rozdział 7. ♦ System plików 189 Nazwa katalogu, którego zawartość chcemy odczyt
Środki dydaktyczne: ■    komputer klasy IBM PC; ■    program
Laboratorium Przemysłowe Systemy Cyfrowe (PLC) 1.1. Projektowanie programu użytkownika Podstawowe

więcej podobnych podstron