250 251

250 251



250

Rozkazy powrotu. Rozkazy te (RET, Rcondition) powodują, przepisanie ~zawartości pary komórek ze szczytu stosu do licznika rozkazów. Zwykle jest to zawartość licznika rozkazów wpisana do stosu rozkazem skoku do podprogramu, co powoduje powrót do miejsca w programie, w którym wystąpił ten rozkaz skoku.

Rozkaz restartu (RST) jest jednobajtowym rozkazem skoku do podprogramu. Trzybitowy adres skoku zawarty w kodzie operacyjnym pozwala na wykonanie skoku do jednego z ośmiu adresów 0,8,16,24,32,40,48,58, zależnie od liczby restartowej. Rozkaz restartu zwykle używany jest przy obsłudze przerwań, co będzie omówione później.

Rozkazy operac.1l na stosie. Często w trakcie wykonywania programu zachodzi potrzeba przerwania dotychczasowego ciągu obliczeń i przejścia do innego fragmentu programu (podprogramu), po wykonaniu którego powinien nastąpić powrót do miejsca, w którym wystąpiło przerwanie. Aby ten powrót umożliwić, procesor musi przed wykonaniem skoku do podprogramu zapamiętać bieżący stan licznika rozkazów, by pod koniec podprogramu z powrotem go tam wpisać. Często zachodzi również potrzeba zabezpieczenia bieżącej zawartości rejestrów i wskaźników przed zniszczeniem w czasie wykonywania podprogramu. Dla ułatwienia tych operacji wprowadzono w omawianym jxP tzw. stos programowy. Jest to obszar w pamięci zewnętrznej RAM zarezerwowany do wpisywania i odczytywania w kolejności UFO zawartości rejestrów,wskaźników i licznika rozkazów.

Zapisywanie danych w stosie (PUSH) odbywa się w ten sposób, że zawartość wskazanej pary rejestrów zapisywana jest w pamięci pod dwoma kolejnymi malejącymi adresami wskazanymi przez zawartość wskaźnika stosu ((SP)-1 i (SP)-2). Każde wpisanie pary danych do stosu powoduje automatyczne zmniejszenie zawartości wskaźnika stosu o 2. W ten sposób dane umieszczane są w kolejnych komórkach pamięci o malejących adresach, zaś we wskaźniku stosu znajduje się adres ostatnio wpisanej danej.Początkową zawartość wskaźnika stosu, czyli obszar pamięci przeznaczony na stos, można zadać rozkazem UCI SP lub SPHL. Przykładowe zawartości rejestrów, wskaźnika stosu i stosu przed i po wykonaniu rozkazu PUSH przedstawiono na rys. 6.7*

mit WWOUAtMM    I    M WYKONANIU

■“    KOIKAWłw mu    •'f    K01KAIÓW PUSU    ""

SP 1 to 1 (I| 1

00

SE

tt

00

SE

ot

»,C | 05 ' BA |

ot

to

u

ot

tl

te

to

(Z

DA

M.L 1 (t ' 0) |

00

OS

ii

n

00

I 00 ' to 1 SP

I U • Si 1 H,l


I ts • Di i i.e

Rys. 6.7. Zawartość rejestrów, wskaźnika stosu i stosu przed i po wykonaniu rozkazów PUSH B i PUSH H. Wszystkie liczby podane są w kodzie szesnastkowym

Odczytywanie zawartości stosu^^OP) odbywa się w ten sposób,"że1 jednorazowo odczytana zostaje para danych z dwu kolejnych komórek pamięci o adresach wskazanych przez zawartość wskaźnika stosu ((SP) i (SP) + 1) oraz

umieszczona w wybranej parze rejestrów wewnątrz procesora. Po wykonaniu tej operacji zawartość wskaźnika stosu automatycznie zwiększa się o 2.

Przykładowe zawartości rejestrów, wskaźnika stosu i stosu przed i po wykonaniu rozkazu POP przedstawiono na rys. 6.8.

HIE» WYKONANIEM

PO WYKONANIU .

ROZKAZOM ROP

----

rl ’

łOIKAlÓW MO

so 1 te ' m i

00

50

00

m i so

00

SE

00

00

5f

00

t.C | 00 ' 00 |

oj

U

u

1 05 ' 0* | O.t

u

(f

u

»A

(!

w

h.i nre sn

05

O

oi

1 4C ' 03 1 U.l

00

(V

00

Rys. 6.8. Zawartość rejestrów, wskaźnika stosu i stosu przed i po wykonaniu rozkazów POP H i POP B

Z powyższych przykładów widać, że dla zapisywania danych w stosie wystarczy szereg kolejnych rozkazów PUSH, zaś dla ich przepisania z powrotem do odpowiednich rejestrów, szereg ułożonych w odwrotnej kolejności rozkazów POP. Adresowanie wykonuje się poza udziałem programu, przez automatyczne zmniejszanie i zwiększanie wskaźnika stosu.

Zawartość licznika rozkazów jest wpisywana do stosu przy pomocy rozkazów CALL i RST, zaś ponownie wpisywana do licznika rozkazów rozkazem RET.

Rozkazy weiścia/wyjścia powodują przesyłanie szyną D danych pomiędzy rejestrem A a wskazanym urządzeniem zewnętrznym. Po otrzymaniu rozkazu IN lub OUT procesor wysyła status CZYTAJ Z 173JŚCIA lub PISZ NA '.TYJŚCIE oraz na szynie adresowej, numer urządzenia we/wy, z którym chce się skomunikować. Status ten, wraz z pozostałymi sygnałami sterującymi, powoduje połączenie szyny danych z żądanym urządzeniem wejściowym lub wyjściowym. Technika realizacji takiego połączenia będzie omówiona później.

Rozkazy sterujące decydują o akceptacji żądań przerwania ustawiając (El) lub zerując (DI) wewnętrzny przerzutnik LITE, zatrzymują działanie pP (HLT) lub opóźniają je o określoną liczbę cykli zegarowych (NOP).

6.5.6. Przerwania

Głównym przeznaczeniem systemów mikroprocesorowych jest sterowanie różnego rodzaju procesami, np. przemysłowymi. Istotną cechą sterowania takimi procesami jest konieczność przerywania dokonywanych aktualnie obliczeń i przechodzenia, na asynchronicznie pojawiające się żądania z zewnątrz,do


Wyszukiwarka

Podobne podstrony:
250 251 250 Rozkazy powrotu. Rozkazy te (RET, Rcondition) powodują, przepisanie * zawartości pary ko
Scan0070 (7) w tę i z powrotem i dumał. Zrezygnował z pomysłu, byśmy zagrali samych siebie, bo uznał
250 jpeg 234 CZĘŚĆ Teoria wymiany międzynarodowej mc mamy na myśli tego, że amerykańskie maszyny są
Powrót Mówicie, te u was jest wolność. Może i jest. Wolne są wiatry polne i światło gwiazd, l
3 (250) urzędu pocztowego. Wino jest to napój uzyskany na drodze fermentacji alkoholowej ze soku wyt
26411 ScannedImage 18 na powrót przez tę świadomość wchłonięta. Trwa ona na zewnątrz subiektywności
IMG359 Pisarz dopełnia te łódzkie realia prowadząc gradację „błotnistego pejzażu”, wynikającą ze sto
Sponsorzy101 12 Tak więc grzyby te powstają bez poprzedniego działania na siebie komórek płciowy
Bity 2, 1, O Bity te określają typ napędu i wybierają parametry przejścia głowicy ze Ścieżki na Scl
File0326 Z jakim miejscem kojarzą ci się te ilustracje? Nazwij każdą z nich. Połącz w pary obrazki p
Obywatelskich bada te skargi i sporządza sprawozdanie na ich temat. Zgodnie ze swoimi zadaniami Rzec
skanuj0010 organy te regulują władczo uprawnienia obywatela (decyzja administracyjna). Jedna ze wspó

więcej podobnych podstron