Tab. 4. Rejestry wskaźnikowe i indeksowe
rodzaj rejestru |
symbol |
przeznaczenie |
Indeksowe (Index) |
SI (Source) |
podobnie jak BX może być użyty jako wskaźnik pamięci segmentu danych, w operacjach na łańcuchach wskaźnik łańcucha źródłowego |
DI (Destina-tion) |
podobny do SI; w operacjacli na lańcucliach wskaźnik łańcucha przeznaczenia | |
Wskaźnikowe (Pointer) |
BP (Base) |
wskaźmk pamięci odnoszący się do segmentu stosu |
SP (Stack) |
wskaźnik stosu zawierający informację o bieżącym położeniu na stosie; powinien być modyfikowany tylko przez rozkazy operujące na stosie |
Tab. 5. Wskaźnik rozkazów
nazwa rejestru |
symbol |
przeznaczenie |
wskaźnik rozkazów |
IP (Instruction Pointer) |
zawiera przesunięcie (offset) bajtu pamięci operacyjnej, w którym zawarty jest następny rozkaz kodu maszynowego do wykonania; ponieważ adres segmentu kodu zawarty jest w rejestrze CS, pełny adres logiczny rozkazu do wykonania wskazywany jest pizez parę rejestrów CS:IP |
Tab. 6. Rejestr flagowy
nazwa rejestru |
symbol |
przeznaczenie |
rejestr znaczników |
FLAGS |
jest zbiorem poszczególnych bitów kontrolnych zwanych znacznikami (flagami), które wskazują na wystąpienie określonego stanu procesora i mogą być wykorzystywane zarówno przez procesor, jak i programistę |
Na rys. 2 pokazano położenie poszczególnych bitów rejestru FLAGS. Pozostałe pozycje tego rejestru nie są zdefiniowane.
Nr bitu |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Funkcja |
X |
sys. |
sys. |
- |
OF |
DF |
IF (ml |
TF (sys-). |
SF |
ZF |
X |
AF |
X |
PF |
X |
CF |
Rys. 2. Pozycje poszczególnych bitów rejestru FLAGS tX- bity zarezerwowane, sys. - bity systemowe)
Tab. 7. Znaczniki rejestru FLAGS (gwiazdką zaznaczono bitV konlmlne dostępne dla programisty, bez gwiazdki znaczniki stanu informijące o wyniku operacji)
Znacznik |
Sym boi |
przeznaczenie |
ozn. debugera |
Overflow Flag (nadmiar) |
OF |
Ustawiany na 1 przy przeniesieniu pomiędzy poprzednim a najbardziej znaczącym bitem operandu, sprawdzany przy operacjach na liczbach całkowitych ze znakiem |
NVoOV |
Direction’ Flag (kierunek) |
DF |
Wpływa na polecenia transferu bloków' danych w górę (0) lub w dól (1), poprzez zwiększanie lub zmniejszanie zawartości rejestrów SI i DI w czasie wykonywania operacji na ciągach |
UP« |
Intemipt* Flag (przerwanie) |
IF |
Decyduje o tym, czy przerwania systemowe sygnalizowane przez urządzenia, powinny być obsługiwane (0), czy nie (1); ustawiany rozkazem STI, zerowany rozkazem CLI |
EI<=> |
Trap’ Flag (krokowa) |
TF |
Ustawienie flagi na 1 przerwaniem 03h powoduje, że procesor działa w trybie krokowym, czyli zatrzymuje procesor po wykonaniu każdej instrukcji ;(dpowiada ustawieniu 1 na odpowiednim bicie słowa stanu programu PSW (Program Status Word) |
Wykład J str. 2
Opracowała: G. Sobiczewska (WSIąfŁódź): datapostatniej modyfikacji 2007-04-05