|
Serwis Edukacyjny nauczycieli w I-LO w Tarnowie
Materiały dla uczniów liceum |
Wyjście Spis treści Wstecz Dalej
Tłumaczenie: mgr Jerzy Wałaszek |
©2026 mgr Jerzy Wałaszek
|
EX DE,HL |
EXCHANGE REGISTER PAIRS = Wymień pary rejestrów |
|||||||||||||||||
| Operacja: | DE ←→ HL | |||||||||||||||||
| Mnemonik: | EX | |||||||||||||||||
| Argumenty: | DE,HL
|
|||||||||||||||||
| Opis: |
2 bajtowa zawartość pary rejestrów DE zostaje wymieniona z parę HL.
|
|||||||||||||||||
| Zmieniane znaczniki: | Żaden. | |||||||||||||||||
| Przykład: | Jeśli zawartość pary rejestrów DE wynosi 2822H,a zawartość pary rejestrów HL wynosi 499AH, to powykonaniu instrukcji EX DE,HL w parze rejestrów DEznajdzie się
499AH, a w parze HL 2822H. |
EX AF,AF' |
EXCHANGE REGISTER PAIRS = Wymień pary rejestrów |
|||||||||||||||||
| Operacja: | AF ←→ A'F' | |||||||||||||||||
| Mnemonik: | EX | |||||||||||||||||
| Argumenty: | AF,AF'
|
|||||||||||||||||
| Opis: |
2 bajtowa zawartość pary rejestrów AF zostaje wymieniona z zawartością drugiej pary AF'. Para rejestrów AF' składa się z alternatywnych rejestrów akumulatora A' oraz znaczników F'.
|
|||||||||||||||||
| Zmieniane znaczniki: | Żaden. | |||||||||||||||||
| Przykład: | Jeśli para rejestrów AF zawiera liczbę 9900H,a para AF' zawiera liczbę 5944H, to instrukcjapowoduje, iż w AF znajdzie się liczba,
a w AF' liczba 9900H. |
EXX |
EXCHANGE EXTRA REGISTERS = Wymień z rejestrami zapasowymi |
||||||||||||||||||||||||||||||
| Operacja: | BC ←→ BC', DE ←→ DE', HL ←→ HL' | ||||||||||||||||||||||||||||||
| Mnemonik: | EXX | ||||||||||||||||||||||||||||||
| Argumenty: | Brak
|
||||||||||||||||||||||||||||||
| Opis: |
Każda 2 bajtowa zawartość par rejestrów BC, DE i HL zostaje wymieniona z 2 bajtową zawartością odpowiednich rejestrów zapasowych BC', DE' i HL'.
|
||||||||||||||||||||||||||||||
| Zmieniane znaczniki: | Żaden. | ||||||||||||||||||||||||||||||
| Przykład: | Jeśli pary rejestrów posiadały zawartość:
to po wykonaniu instrukcji
|
EX (SP),HL |
EXCHANGE HL WITH STACK TOP = Wymień HL ze szczytem stosu |
|||||||||||||||||
| Operacja: | H ←→ (SP+1), L ←→ (SP) | |||||||||||||||||
| Mnemonik: | EX | |||||||||||||||||
| Argumenty: | (SP),HL
|
|||||||||||||||||
| Opis: |
Młodszy bajt pary rejestrów HL jest wymieniany z zawartością komórki pamięci o adresie określonym przez zawartość rejestru wskaźnika stosu SP, a starszy bajt HL jest wymieniany z kolejną komórką pamięci o adresie SP+1. Zawartość SP nie ulega zmianie.
|
|||||||||||||||||
| Zmieniane znaczniki: | Żaden. | |||||||||||||||||
| Przykład: | Jeśli para rejestrów HL zawiera 7012H,
rejestr wskaźnika stosu zawiera, komórka pamięci pod
adresem 8856H zawiera bajt 11H,a następna komórka pamięci o adresie 8857H zawiera bajt 22H,to instrukcja EX (SP),HL powoduje, iż para rejestrów HL
przyjmiezawartość 2211H, w komórce pamięci o adresie
8856H zostanieumieszczony bajt 12H, w następnej
komórce o adresie 8857H zostanieumieszczony bajt 70H, a rejestr wskaźnika stosu zatrzyma swązawartość 8856H. |
EX (SP),IX |
EXCHANGE IX WITH STACK TOP = Wymień IX ze szczytem stosu |
||||||||||||||||||||||||||
| Operacja: | IXH ←→ (SP+1), IXL ←→ (SP) | ||||||||||||||||||||||||||
| Mnemonik: | EX | ||||||||||||||||||||||||||
| Argumenty: | (SP),IX
|
||||||||||||||||||||||||||
| Opis: |
Młodszy bajt rejestru indeksowego IX jest wymieniany z zawartością komórki pamięci o adresie określonym przez zawartość rejestru wskaźnika stosu SP, a starszy bajt IX jest wymieniany z kolejną komórką pamięci o adresie SP+1. Zawartość SP nie ulega zmianie.
|
||||||||||||||||||||||||||
| Zmieniane znaczniki: | Żaden. | ||||||||||||||||||||||||||
| Przykład: | Jeśli rejestr indeksowy IX zawiera 3988H,
rejestr wskaźnika stosuzawiera 0100H, komórka pamięci pod
adresem 0100H zawiera bajt, a następna
komórka pamięci o adresie 0101H zawiera bajt 48H,to instrukcja EX (SP),IX powoduje, iż rejestr indeksowy IX
przyjmiezawartość 4890H, w komórce pamięci o adresie
0100H zostanieumieszczony bajt 88H, w następnej
komórce o adresie 0101Hzostanie umieszczony bajt 39H,
a rejestr wskaźnika stosu zatrzymaswą zawartość 0100H. |
EX (SP),IY |
EXCHANGE IY WITH STACK TOP = Wymień IY ze szczytem stosu |
||||||||||||||||||||||||||
| Operacja: | IYH ←→ (SP+1), IYL ←→ (SP) | ||||||||||||||||||||||||||
| Mnemonik: | EX | ||||||||||||||||||||||||||
| Argumenty: | (SP),IX
|
||||||||||||||||||||||||||
| Opis: |
Młodszy bajt rejestru indeksowego IY jest wymieniany z zawartością komórki pamięci o adresie określonym przez zawartość rejestru wskaźnika stosu SP, a starszy bajt IY jest wymieniany z kolejną komórką pamięci o adresie SP+1. Zawartość SP nie ulega zmianie.
|
||||||||||||||||||||||||||
| Zmieniane znaczniki: | Żaden. | ||||||||||||||||||||||||||
| Przykład: | Jeśli rejestr indeksowy IY zawiera 3988H,
rejestr wskaźnika stosuzawiera 0100H, komórka pamięci pod
adresem 0100H zawiera bajt, a następna
komórka pamięci o adresie 0101H zawiera bajt 48H,to instrukcja EX (SP),IY powoduje, iż rejestr indeksowy IY
przyjmiezawartość 4890H, w komórce pamięci o adresie
0100H zostanieumieszczony bajt 88H, w następnej
komórce o adresie 0101Hzostanie umieszczony bajt 39H,
a rejestr wskaźnika stosu zatrzymaswą zawartość 0100H. |
LDI |
LOAD DATA AND INCREMENT = Ładuj dane i zwiększ |
||||||||||||||||||||||||||
| Operacja: | (DE) ← (HL), DE ← DE+1, HL ← HL+1, BC ← BC-1 | ||||||||||||||||||||||||||
| Mnemonik: | LDI | ||||||||||||||||||||||||||
| Argumenty: | Brak
|
||||||||||||||||||||||||||
| Opis: |
Bajt danych jest przepisywany z komórki pamięci adresowanej przez zawartość pary rejestrów HL do komórki adresowanej parą rejestrów DE. Następnie zawartości obu par rejestrów są zwiększane o 1, a para rejestrów BC (ang. byte counter - licznik bajtów) jest zmniejszana o 1.
|
||||||||||||||||||||||||||
| Zmieniane znaczniki: | S nie jest zmieniany Z nie jest zmieniany H jest zerowany P/V jest ustawiany na 1, jeśli BC-1 ≠ 0, inaczej zerowany N jest zerowany C nie jest zmieniany |
||||||||||||||||||||||||||
| Przykład: | Jeśli para rejestrów HL zawiera 1111H,
komórkapamięci 1111H zawiera bajt 88H, para rejestrów DEzawiera 2222H, a para rejestrów BC zawiera 7H, toinstrukcja LDI daje w wyniku następujące zawartościrejestrów i komórek pamięci:
|
LDIR |
LOAD DATA, INCREMENT AND REPEAT = Ładuj dane, zwiększ i powtarzaj |
|||||||||||||||||||||||||||||||||||||||||||||
| Operacja: | (DE) ← (HL), DE ← DE+1, HL ← HL+1, BC ← BC-1 | |||||||||||||||||||||||||||||||||||||||||||||
| Mnemonik: | LDIR | |||||||||||||||||||||||||||||||||||||||||||||
| Argumenty: | Brak
|
|||||||||||||||||||||||||||||||||||||||||||||
| Opis: |
Ta dwubajtowa instrukcja przesyła bajt danych z komórki pamięci adresowanej przez zawartość pary rejestrów HL do komórki adresowanej parą rejestrów DE. Obie te pary rejestrów są zwiększane o 1, a para rejestrów BC (ang. byte counter - licznik bajtów) jest zmniejszana o 1. Jeśli w wyniku zmniejszenia rejestr BC osiągnie wartość 0, instrukcja zostaje zakończona. Jeśli BC jest różne od zera, licznik rozkazów PC zostaje zmniejszony o 2 i wykonanie instrukcji powtarza się. Rozpoznawane są przerwania oraz wykonane zostają dwa cykle odświeżania po każdym przesyle danych. Jeśli przed wykonaniem instrukcji para rejestrów BC zostanie ustawiona na zero, to pętla przejdzie przez pełne 64 KB pamięci. Dla BC ≠ 0:
|
|||||||||||||||||||||||||||||||||||||||||||||
| Zmieniane znaczniki: | S nie jest zmieniany Z nie jest zmieniany H jest zerowany P/V jest zerowany N jest zerowany C nie jest zmieniany |
|||||||||||||||||||||||||||||||||||||||||||||
| Przykład: | Jeśli para rejestrów HL zawiera 1111H,
para rejestrów DE zawiera
2222H,para rejestrów BC zawiera 0003H i
pamięć posiada następującą zawartość:
to wykonanie instrukcji
|
LDD |
LOAD DATA AND DECREMENT = Ładuj dane i zmniejsz |
||||||||||||||||||||||||||
| Operacja: | (DE) ← (HL), DE ← DE-1, HL ← HL-1, BC ← BC-1 | ||||||||||||||||||||||||||
| Mnemonik: | LDD | ||||||||||||||||||||||||||
| Argumenty: | Brak
|
||||||||||||||||||||||||||
| Opis: |
Bajt danych jest przepisywany z komórki pamięci adresowanej przez zawartość pary rejestrów HL do komórki adresowanej parą rejestrów DE. Następnie zawartości par rejestrów DE, HL oraz BC (ang. byte counter - licznik bajtów) są zmniejszane o 1.
|
||||||||||||||||||||||||||
| Zmieniane znaczniki: | S nie jest zmieniany Z nie jest zmieniany H jest zerowany P/V jest ustawiany na 1, jeśli BC-1 ≠ 0, inaczej zerowany N jest zerowany C nie jest zmieniany |
||||||||||||||||||||||||||
| Przykład: | Jeśli para rejestrów HL zawiera 1111H,
komórkapamięci 1111H zawiera bajt 88H, para rejestrów DEzawiera 2222H a para rejestrów BC zawiera 7H, toinstrukcja LDD daje w wyniku następujące zawartościrejestrów i komórek pamięci:
|
LDDR |
LOAD DATA, DECREMENT AND REPEAT = Ładuj dane, zmniejsz i powtarzaj |
|||||||||||||||||||||||||||||||||||||||||||||
| Operacja: | (DE) ← (HL), DE ← DE-1, HL ← HL-1, BC ← BC-1 | |||||||||||||||||||||||||||||||||||||||||||||
| Mnemonik: | LDDR | |||||||||||||||||||||||||||||||||||||||||||||
| Argumenty: | Brak
|
|||||||||||||||||||||||||||||||||||||||||||||
| Opis: |
Ta dwubajtowa instrukcja przesyła bajt danych z komórki pamięci
adresowanej przez zawartość pary rejestrów HL do komórki adresowanej parą rejestrów DE. Następnie pary rejestrów DE, HL i BC (ang. byte counter - licznik bajtów) są zmniejszane o 1. Jeśli w wyniku zmniejszenia rejestr BC osiągnie wartość 0, instrukcja zostaje zakończona. Jeśli zawartość BC jest różna od zera, licznik rozkazów PC zostaje zmniejszony o 2 i wykonanie instrukcji powtarza się. Rozpoznawane są przerwania oraz wykonane zostają dwa cykle odświeżania po każdym przesyle danych. Jeśli przed wykonaniem instrukcji para rejestrów BC zostanie ustawiona na zero, to pętla przejdzie przez pełne 64KB pamięci. Dla BC ≠ 0:
|
|||||||||||||||||||||||||||||||||||||||||||||
| Zmieniane znaczniki: | S nie jest zmieniany Z nie jest zmieniany H jest zerowany P/V jest zerowany N jest zerowany C nie jest zmieniany |
|||||||||||||||||||||||||||||||||||||||||||||
| Przykład: | Jeśli para rejestrów HL zawiera 1114H,
para rejestrów DE zawiera
2225H, pararejestrów BC zawiera 0003H i
pamięć posiada następującą zawartość:
to wykonanie instrukcji
|
CPI |
COMPARE AND INCREMENT = Porównaj i zwiększ |
||||||||||||||||||||||||||
| Operacja: | A-(HL), HL ← HL+1, BC ← BC-1 | ||||||||||||||||||||||||||
| Mnemonik: | CPI | ||||||||||||||||||||||||||
| Argumenty: | Brak
|
||||||||||||||||||||||||||
| Opis: |
Zawartość komórki pamięci adresowanej przez parę rejestrów HL jest porównywana z zawartością akumulatora. Powoduje to odpowiednie ustawienie znaczników. Następnie para rejestrów HL jest zwiększana o 1, a para BC (licznik bajtów) jest zmniejszana o 1.
|
||||||||||||||||||||||||||
| Zmieniane znaczniki: | S jest ustawiany na 1, gdy wynik ujemny. Inaczej jest zerowany. Z jest ustawiany na 1, jeśli A = (HL); inaczej zerowany H zostaje ustawiony na 1, jeśli wystąpiła pożyczka z bitu 4; inaczej jest zerowany P/V jest ustawiany na 1, jeśli BC-1 nie jest równe zero; inaczej zerowany N jest ustawiany na 1 C nie jest zmieniany |
||||||||||||||||||||||||||
| Przykład: | Jeśli para rejestrów HL zawiera 1111H,
komórkapamięci 1111H zawiera 3BH, akumulator
zawiera, a BC (licznik bajtów)
zawiera 0001H, towykonanie instrukcji CPI
spowoduje ustawienie BCna 0000H, pary rejestrów HL na 1112H, znacznika Zw rejestrze F na 1, znacznika P/V w F na 0. Zawartość akumulatora ani komórki pamięci 1111Hnie ulega zmianie. |
CPIR |
COMPARE, INCREMENT AND REPEAT = Porównaj, zwiększ i powtarzaj |
||||||||||||||||||||||||||
| Operacja: | A-(HL), HL ← HL+1, BC ← BC-1 | ||||||||||||||||||||||||||
| Mnemonik: | CPIR | ||||||||||||||||||||||||||
| Argumenty: | Brak
|
||||||||||||||||||||||||||
| Opis: |
Zawartość komórki pamięci adresowanej przez parę rejestrów HL jest porównywana z zawartością akumulatora. Powoduje to odpowiednie ustawienie znaczników. Następnie para rejestrów HL jest zwiększana o 1, a para BC (licznik bajtów) jest zmniejszana o 1. Jeśli po zmniejszeniu para BC przyjmuje wartość zero lub było A zmniejszony o 2 i instrukcja jest powtarzana. Rozpoznawane są przerwania oraz wykonywane dwa cykle odświeżania pamięci po każdym teście. Jeśli
przed wykonaniem instrukcji para BC zawiera zero, to instrukcja Dla BC ≠ 0 i A ≠ (HL):
|
||||||||||||||||||||||||||
| Zmieniane znaczniki: | S jest ustawiany na 1, gdy wynik ujemny. Inaczej jest
zerowany. Z jest ustawiany na 1, jeśli A = (HL); inaczej zerowany H zostaje ustawiony na 1, jeśli wystąpiła pożyczka z bitu 4; inaczej jest zerowany P/V jest ustawiany na 1, jeśli BC-1 nie jest równe zero; inaczej zerowany N jest ustawiany na 1 C nie jest zmieniany |
||||||||||||||||||||||||||
| Przykład: | Jeśli para rejestrów HL zawiera 1111H,
akumulator zawiera 0F3H,BC zawiera 0007H, a
komórki pamięci posiadają poniższą zawartość:
CPIR zawartość pary rejestrów HL wynosi
1114H,zawartość BC jest równa 0004H,
znaczniki P/V i Z w rejestrze Fzostają ustawione na 1. |
CPD |
COMPARE AND DECREMENT = Porównaj i zmniejsz |
||||||||||||||||||||||||||
| Operacja: | A-(HL), HL ← HL-1, BC ← BC-1 | ||||||||||||||||||||||||||
| Mnemonik: | CPD | ||||||||||||||||||||||||||
| Argumenty: | Brak
|
||||||||||||||||||||||||||
| Opis: |
Zawartość komórki pamięci adresowanej przez parę rejestrów HL jest porównywana z zawartością akumulatora. Powoduje to odpowiednie ustawienie znaczników. Następnie pary rejestrów HL i BC (licznik bajtów) są zmniejszane o 1.
|
||||||||||||||||||||||||||
| Zmieniane znaczniki: | S jest ustawiany na 1, gdy wynik ujemny. Inaczej jest zerowany. Z jest ustawiany na 1, jeśli A = (HL); inaczej zerowany H zostaje ustawiony na 1, jeśli wystąpiła pożyczka z bitu 4; inaczej jest zerowany P/V jest ustawiany na 1, jeśli BC-1 nie jest równe zero; inaczej zerowany N jest ustawiany na 1 C nie jest zmieniany |
||||||||||||||||||||||||||
| Przykład: | Jeśli para rejestrów HL zawiera 1111H,
komórkapamięci 1111H zawiera 3BH, akumulator
zawiera3BH, a BC (licznik bajtów)
zawiera 0001H, towykonanie instrukcji CPD
spowoduje ustawienie BCna 0000H, pary rejestrów HL na 1110H, znacznika Zw rejestrze F na 1, znacznika P/V w F na 0. Zawartość akumulatora ani komórki pamięci 1111H nie ulegazmianie. |
CPDR |
COMPARE, DECREMENT AND REPEAT = Porównaj, zmniejsz i powtarzaj |
||||||||||||||||||||||||||
| Operacja: | A-(HL), HL ← HL-1, BC ← BC-1 | ||||||||||||||||||||||||||
| Mnemonik: | CPDR | ||||||||||||||||||||||||||
| Argumenty: | Brak
|
||||||||||||||||||||||||||
| Opis: |
Zawartość komórki pamięci adresowanej przez parę rejestrów HL jest porównywana z zawartością akumulatora. Powoduje to odpowiednie ustawienie znaczników. Następnie pary rejestrów HL i BC (licznik bajtów) są zmniejszane o 1. Jeśli po zmniejszeniu para BC przyjmuje wartość zero lub było A = (HL), instrukcja kończy się. Jeśli BC ≠ 0 i A ≠ (HL), licznik rozkazów zostaje zmniejszony o 2 i instrukcja jest powtarzana. Rozpoznawane są przerwania oraz wykonywane dwa cykle odświeżania pamięci po każdym teście. Jeśli przed wykonaniem
instrukcji para BC zawiera zero, to instrukcja Dla BC ≠ 0:
|
||||||||||||||||||||||||||
| Zmieniane znaczniki: | S jest ustawiany na 1, gdy wynik ujemny. Inaczej jest
zerowany. Z jest ustawiany na 1, jeśli A = (HL); inaczej zerowany H zostaje ustawiony na 1, jeśli wystąpiła pożyczka z bitu 4; inaczej jest zerowany P/V jest ustawiany na 1, jeśli BC-1 nie jest równe zero; inaczej zerowany N jest ustawiany na 1 C nie jest zmieniany |
||||||||||||||||||||||||||
| Przykład: | Jeśli para rejestrów HL zawiera 1118H,
akumulator zawiera 0F3H, BCzawiera 0007H, a
komórki pamięci posiadają poniższą zawartość:
CPDR zawartość pary rejestrów HL wynosi
1115H,zawartość BC jest równa 0004H,
znaczniki P/V i Z w rejestrze F zostająustawione na 1. |
![]() |
Zespół Przedmiotowy Chemii-Fizyki-Informatyki w I Liceum Ogólnokształcącym im. Kazimierza Brodzińskiego w Tarnowie ul. Piłsudskiego 4 ©2026 mgr Jerzy Wałaszek |
Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone pod warunkiem podania źródła oraz niepobierania za to pieniędzy.
Pytania proszę przesyłać na adres email:
Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.