232
O
nych sygnałów. Asortyment i funkcje pełnione w systemie przez te układy, dostępne w postaci scalonej, omówimy później.
j.3.5. Lista rozkazów
Lista rozkazów pP 8080 zawiera 72 typy rozkazów. Jak pamiętamy, składają się one z jednego, dwu, lub trzech bajtów, umieszczonych w kolejnych komórkach pamięci. Większość rozkazów dotyczy operacji na danych przechowywanych w pamięci zewnętrznej (li), wewnętrznej (B, C, D, E, H, L) lub akumulatorze (A). Dla pobrania lub umieszczenia danej w odpowiednim miejscu przewidziane są w tym procesorze cztery różne sposoby adresowania:
1) natychmiastowe - dana zawarta jest w samym rozkazie, w drugim lub drugim i trzecim bajcie;
2) bezpośrednie - adres danej w pamięci zewnętrznej jest zawarty w drugim i trzecim bajcie rozkazu;
3) rejestrowe - adres danej w rejestrze lub parze rejestrów zawarty je3t
w kodzie operacyjnym rozkazu; -i
4) rejestrowe pośrednie - kod operacyjny wskazuje parę rejestrów zawierających adres komórki pamięci li przechowującej daną.
Dzięki temu, że rozkazy danego typu mogą być wykonywane na operandach różnie adresowanych, lista rozkazów zawiera 244 rozkazy różniące się kodami operacyjnymi.
Poniżej podany jest szczegółowy opis wszystkich typów rozkazów. Każdy rozkaz opisany jest w następujący sposób:
1. Nu pierwszym miejscu z lewej strony podany jest mnenoniczny symbol rozkazu (duże litery) wraz z symbolami operandów (małe litery).
u prawo od symbolu podana jest polska oraz, w nawiasie, angielska na-z..a rozkazu.
>. Niżej podany jest symboliczny opis działania rozkazu.
•4. jądrze linie zawierają opis słowny działania rozkazu.
Następna linia zawiera binarny kod operacyjny, a pod nim zaznaczone są ewentualne dalsze bajty rozkazu.
C.
V.' następnych liniach podana jest liczba cykli maszynowych i stanów, przez które procesor przechodzi w czasie wykonywania rozkazu oraz lista pobudzanych przez ten rozkaz wskaźników.
Przy opisie stosujemy następujące symbole i skróty:
uddr latu dutalć-bo jt2 bajt j
■■ort
> r-i, r2 DID, 3S3
16-bitowa liczba wskazująca adres 6-bitowa liczba 16-bitowa liczba drugi bajt rozkazu trzeci bajt rozkazu
8-bitowy adres urządzenia wejścia/wyjścia jeden z rejestrów 4,B,C,D,E,H,L
trzy bity określające jeden z rejestrów A,B,C,D,E,H,L (DDD - rejestr przeznaczenia, SSS - rejestr źródłowy)
RP
rh
rl
PC
SP
Z
s
p C1 AC CCC ( )
A
V
©
n
NNN
DDD lub SSS 111 000 001 010 011 100 101
Nazwa rejestru A B C D E H L
Jedna z par rejestrów:
B reprezentuje parę B, C z B jako rejestrem starszym i C Jako rejestrem młodszym,
D reprezentuje parę D, E z D jako rejestrem starszym i E Jako rejestrem młodszym,
H reprezentuje parę K, L z E jako rejestrem starszym i L jako rejestrem młodszym,
SP reprezentuje 16-bitowy wskaźnik stosu, dwa bity określające jedną z par rejestrów
PARA SSJESTHÓf.'
3~C D-E H-L
RP
00
01
10
11
pierwszy (starszy) rejestr określonej pary drugi (młodszy) rejestr określonej pary
16-bitowy licznik rozkazów (?CH i PCn określają bardziej i mniej znaczące 8 bitów)
16-bitowy wskaźnik stosu (SPH i SPL określają bar_ziej i mniej znaczące 8 bitów)
bit m rejestru r (bity są numerowane od 7 do 0, od lewej do prawej)
wskaźnik zera (zero) wskaźnik znaku (sign)
wskaźnik parzystości (parity) testo..alne
wskaźnik przeniesienia (carry)
wskaźnik pomocniczego przeniesienia (auxiliary carry)
trzy bity określające stan dowolnego wskaźnika testowalneg.
Zawartość wskazanego w nawiasach rejestru lub komórki pamięci.
„jest przesłane do"
iloczyn logiczny
suma logiczna
Suma modulo dwa
dodawanie
odejmowanie (w systemie uzupełnienia lo dwóch) mnożenie
„Jest zamienione z” liczba restartowa od O do 7
dwójkowa reprezentacja (000 do 111) dla nr restartu