Serwis Edukacyjny
nauczycieli

w I-LO w Tarnowie
obrazek

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

Tłumaczenie: mgr Jerzy Wałaszek

©2026 mgr Jerzy Wałaszek

Opis instrukcji mikroprocesora Z80 – 10

SPIS TREŚCI

Opis instrukcji mikroprocesora Z80 – 10

Grupa instrukcji obrotów

RLCA

ROTATE LEFT CIRCULAR ACCUMULATOR = Obracaj akumulator w lewo

Operacja: obrazek
Mnemonik: RLCA
b7 b6 b5 b4 b3 b2 b1 b0
0 0 0 0 0 1 1 1 07
Opis: Zawartość Akumulatora jest obracana w lewo o 1 bit. Bit znaku (b7) jest
kopiowany do znacznika przeniesienia C i po wykonaniu obrotu trafia na
pozycję bitu b0.
Cykle Takty Czas
1 4 1,00μs
Zmieniane znaczniki: S nie zmieniany
Z nie zmieniany
H jest zerowany
P/V nie zmieniany
N jest zerowany
C zawiera stan bitu b7 Akumulatora przed wykonaniem operacji.
Przykład: Jeśli Akumulator zawiera
b7 b6 b5 b4 b3 b2 b1 b0
1 0 0 0 1 0 0 0

to po wykonaniu instrukcji RLCA zawartość Akumulatora oraz znacznika
przeniesienia C jest następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 0 0 1 0 0 0 1

RLA

ROTATE LEFT ACCUMULATOR = Obracaj akumulator w lewo z przeniesieniem

Operacja: obrazek
Mnemonik: RLA
b7 b6 b5 b4 b3 b2 b1 b0
0 0 0 1 0 1 1 1 17
Opis: Zawartość Akumulatora jest obracana poprzez bit przeniesienia C w lewo o 1 bit.
Poprzednia zawartość bitu przeniesienia C trafia do bitu b0. Bit b7 jest umieszczany
w znaczniku C.
Cykle Takty Czas
1 4 1,00μs
Zmieniane znaczniki: S nie zmieniany
Z nie zmieniany
H jest zerowany
P/V nie zmieniany
N jest zerowany
C zawiera stan bitu b7 Akumulatora przed wykonaniem operacji.
Przykład: Jeśli Akumulator i znacznik C zawierają
C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 1 1 1 0 1 1 0

to po wykonaniu instrukcji RLA zawartość Akumulatora oraz znacznika przeniesienia C
jest następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
0   1 1 1 0 1 1 0 1

RRCA

ROTATE RIGHT CIRCULAR ACCUMULATOR = Obracaj akumulator w prawo

Operacja: obrazek
Mnemonik: RRCA
b7 b6 b5 b4 b3 b2 b1 b0
0 0 0 0 1 1 1 1 0F
Opis: Zawartość Akumulatora jest obracana w prawo o 1 bit. Bit b0 jest kopiowany
do znacznika przeniesienia C i po wykonaniu obrotu trafia na pozycję bitu b7.
Cykle Takty Czas
1 4 1,00μs
Zmieniane znaczniki: S nie zmieniany
Z nie zmieniany
H jest zerowany
P/V nie zmieniany
N jest zerowany
C zawiera stan bitu b0 Akumulatora przed wykonaniem operacji.
Przykład: Jeśli Akumulator zawiera
b7 b6 b5 b4 b3 b2 b1 b0
0 0 0 1 0 0 0 1

to po wykonaniu instrukcji RRCA zawartość Akumulatora oraz znacznika
przeniesienia C jest następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
1 0 0 0 1 0 0 0   1

RRA

ROTATE RIGHT ACCUMULATOR = Obracaj akumulator w prawo z przeniesieniem

Operacja: obrazek
Mnemonik: RRA
b7 b6 b5 b4 b3 b2 b1 b0
0 0 0 1 1 1 1 1 1F
Opis: Zawartość Akumulatora jest obracana poprzez bit przeniesienia C w prawo o 1 bit.
Poprzednia zawartość bitu przeniesienia C trafia do bitu b7. Bit b0 jest umieszczany
w znaczniku C.
Cykle Takty Czas
1 4 1,00μs
Zmieniane znaczniki: S nie zmieniany
Z nie zmieniany
H jest zerowany
P/V nie zmieniany
N jest zerowany
C zawiera stan bitu b0 Akumulatora przed wykonaniem operacji.
Przykład: Jeśli Akumulator i znacznik C zawierają
b7 b6 b5 b4 b3 b2 b1 b0   C
1 1 1 0 0 0 0 1   0

to po wykonaniu instrukcji RRA zawartość Akumulatora oraz znacznika przeniesienia C
jest następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
0 1 1 1 0 0 0 0   1

RLC r

ROTATE LEFT CIRCULAR = Obracaj w lewo

Operacja: obrazek
Mnemonik: RLC
Argumenty: r
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 0 1 0 1 1 CB
0 0 0 0 0 ← r →  
Opis: Zawartość rejestru r jest obracana w lewo o 1 bit.
Poprzednia zawartość bitu b7 trafia do znacznika
przeniesienia oraz po wykonaniu obrotu do bitu b0.
W kodzie operacyjnym instrukcji argument r  jest
przedstawiony następująco:
Rejestr r
A
B
C
D
E
H
L
111
000
001
010
011
100
101
Cykle Takty Czas
2 8 (4,4) 2,00μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny; inaczej
zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej
zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera parzystą
liczbę bitów o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b7 rejestru źródłowego przed
wykonaniem operacji.
Przykład: Jeśli rejestr C zawiera
b7 b6 b5 b4 b3 b2 b1 b0
1 0 0 0 1 0 0 0

to po wykonaniu instrukcji RLC C zawartość rejestru C
oraz znacznika przeniesienia C jest następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 0 0 1 0 0 0 1

RLC (HL)

ROTATE LEFT CIRCULAR = Obracaj w lewo

Operacja: obrazek
Mnemonik: RLC
Argumenty: (HL)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 0 1 0 1 1 CB
0 0 0 0 0 1 1 0 06
Opis: Zawartość komórki pamięci o adresie
przechowywanym w parze rejestrów HL jest
obracana w lewo o 1 bit. Poprzednia
zawartość bitu b7 trafia do znacznika
przeniesienia oraz po wykonaniu obrotu
do bitu b0.
Cykle Takty Czas
4 15 (4,4,4,3) 3,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera
parzystą liczbę bitów o stanie 1; inaczej
zerowany
N jest zerowany
C zawiera stan bitu b7 komórki pamięci przed
wykonaniem operacji.
Przykład: Jeśli para rejestrów HL zawiera 2828H,
a komórka pamięci o adresie 2828H
przechowuje:
b7 b6 b5 b4 b3 b2 b1 b0
1 0 0 0 1 0 0 0

to po wykonaniu instrukcji RLC (HL)
zawartość komórki pamięci pod adresem
2828H
oraz znacznika przeniesienia C jest
następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 0 0 1 0 0 0 1

RLC (IX+d)

ROTATE LEFT CIRCULAR = Obracaj w lewo

Operacja: obrazek
Mnemonik: RLC
Argumenty: (IX+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
d  
0 0 0 0 0 1 1 0 06
Opis: Zawartość komórki pamięci o adresie równym
sumie zawartości rejestru indeksowego IX oraz
przesunięcia d jest obracana w lewo o 1 bit.
Poprzednia zawartość bitu b7 trafia do znacznika
przeniesienia oraz po wykonaniu obrotu do bitu b0.
Cykle Takty Czas
6 23 (4,4,3,5,4,3) 5,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny;
inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej
zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera
parzystą liczbę bitów o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b7 komórki pamięci przed
wykonaniem operacji.
Przykład: Jeśli zawartością rejestru indeksowego IX jest
1000H
, a komórka pamięci pod adresem 1002H
przechowuje:
b7 b6 b5 b4 b3 b2 b1 b0
1 0 0 0 1 0 0 0

to po wykonaniu instrukcji RLC (IX+2H)
zawartość komórki pamięci pod adresem 1002H
oraz znacznika przeniesienia C jest następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 0 0 1 0 0 0 1

RLC (IY+d)

ROTATE LEFT CIRCULAR = Obracaj w lewo

Operacja: obrazek
Mnemonik: RLC
Argumenty: (IY+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
d  
0 0 0 0 0 1 1 0 06
Opis: Zawartość komórki pamięci o adresie
równym sumie zawartości rejestru
indeksowego IY oraz przesunięcia d jest
obracana w lewo o 1 bit. Poprzednia
zawartość bitu b7 trafia do znacznika
przeniesienia oraz po wykonaniu obrotu
do bitu b0.
Cykle Takty Czas
6 23 (4,4,3,5,4,3) 5,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny;
inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej
zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera
parzystą liczbę bitów o stanie 1; inaczej
zerowany
N jest zerowany
C zawiera stan bitu b7 komórki pamięci przed
wykonaniem operacji.
Przykład: Jeśli zawartością rejestru indeksowego IY jest
1000H, a komórka pamięci pod adresem 1002H
przechowuje
b7 b6 b5 b4 b3 b2 b1 b0
1 0 0 0 1 0 0 0

to po wykonaniu instrukcji RLC (IY+2H)
zawartość komórki pamięci pod adresem 1002H
oraz znacznika przeniesienia C jest następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 0 0 1 0 0 0 1

RRC r

ROTATE RIGHT CIRCULAR = Obracaj w prawo

Operacja: obrazek
Mnemonik: RRC
Argumenty: r
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 0 1 0 1 1 CB
0 0 0 0 1 ← r →  
Opis: Zawartość rejestru r  jest obracana w prawo o 1 bit.
Poprzednia zawartość bitu b0 trafia do znacznika
przeniesienia oraz po wykonaniu obrotu do bitu b7.
W kodzie operacyjnym instrukcji argument r  jest
przedstawiony następująco:
Rejestr r
A
B
C
D
E
H
L
111
000
001
010
011
100
101
Cykle Takty Czas
2 8 (4,4) 2,00μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny;
inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej
zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera
parzystą liczbę bitów o stanie 1; inaczej
zerowany
N jest zerowany
C zawiera stan bitu b0 rejestru źródłowego przed
wykonaniem operacji.
Przykład: Jeśli rejestr A zawiera
b7 b6 b5 b4 b3 b2 b1 b0
0 0 1 1 0 0 0 1

to po wykonaniu instrukcji RRC A zawartość
rejestru A oraz znacznika przeniesienia C jest
następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
1 0 0 1 1 0 0 0   1

RRC (HL)

ROTATE RIGHT CIRCULAR = Obracaj w prawo

Operacja: obrazek
Mnemonik: RRC
Argumenty: (HL)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 0 1 0 1 1 CB
0 0 0 0 1 1 1 0 0E
Opis: Zawartość komórki pamięci o adresie
przechowywanym w parze rejestrów HL jest
obracana w prawo o 1 bit. Poprzednia zawartość
bitu b0 trafia do znacznika przeniesienia oraz po
wykonaniu obrotu do bitu b7.
Cykle Takty Czas
4 15 (4,4,4,3) 3,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny;
inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej
zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera
parzystą liczbę bitów o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b0 komórki pamięci przed
wykonaniem operacji.
Przykład: Jeśli para rejestrów HL zawiera 2000H, a komórka
pod adresem 2000H ma zawartość
b7 b6 b5 b4 b3 b2 b1 b0
0 0 1 1 0 0 0 1

to po wykonaniu instrukcji RRC (HL) zawartość tej
komórki oraz znacznika przeniesienia C jest
następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
1 0 0 1 1 0 0 0   1

RRC (IX+d)

ROTATE RIGHT CIRCULAR = Obracaj w prawo

Operacja: obrazek
Mnemonik: RRC
Argumenty: (IX+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
d  
0 0 0 0 1 1 1 0 0E
Opis: Zawartość komórki pamięci o adresie równym
sumie zawartości rejestru indeksowego IX oraz
przesunięcia d jest obracana w prawo o 1 bit.
Poprzednia zawartość bitu b0 trafia do
znacznika przeniesienia oraz po wykonaniu
obrotu do bitu b7.
Cykle Takty Czas
6 23 (4,4,3,5,4,3) 5,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny;
inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej
zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera
parzystą liczbę bitów o stanie 1; inaczej
zerowany
N jest zerowany
C zawiera stan bitu b0 komórki pamięci przed
wykonaniem operacji.
Przykład: Jeśli rejestr indeksowy IX zawiera 2000H,
a komórka pod adresem 2022H ma zawartość
b7 b6 b5 b4 b3 b2 b1 b0
0 0 1 1 0 0 0 1

to po wykonaniu instrukcji RRC (IX+22H)
zawartość tej komórki oraz znacznika
przeniesienia C jest następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
1 0 0 1 1 0 0 0   1

RRC (IY+d)

ROTATE RIGHT CIRCULAR = Obracaj w prawo

Operacja: obrazek
Mnemonik: RRC
Argumenty: (IY+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
d  
0 0 0 0 1 1 1 0 0E
Opis: Zawartość komórki pamięci o adresie równym
sumie zawartości rejestru indeksowego IY oraz
przesunięcia d jest obracana w prawo o 1 bit.
Poprzednia zawartość bitu b0 trafia do znacznika
przeniesienia oraz po wykonaniu obrotu do bitu b7.
Cykle Takty Czas
6 23 (4,4,3,5,4,3) 5,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny;
inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej
zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera
parzystą liczbę bitów o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b0 komórki pamięci przed
wykonaniem operacji.
Przykład: Jeśli rejestr indeksowy IY zawiera 2000H,
a komórka pod adresem 2022H ma zawartość:
b7 b6 b5 b4 b3 b2 b1 b0
0 0 1 1 0 0 0 1

to po wykonaniu instrukcji RRC (IX+22H)
zawartość tej komórki oraz znacznika
przeniesienia C jest następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
1 0 0 1 1 0 0 0   1

RL r

ROTATE LEFT = Obracaj w lewo z przeniesieniem

Operacja: obrazek
Mnemonik: RL
Argumenty: r
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 0 1 0 1 1 CB
0 0 0 1 0 ← r →  
Opis: Zawartość rejestru r  jest obracana w lewo o 1 bit.
Poprzednia zawartość bitu b7 trafia do znacznika
przeniesienia C. Pierwotna zawartość znacznika
przeniesienia C jest kopiowana do bitu b0. W kodzie
operacyjnym instrukcji argument r  jest przedstawiony
następująco:
Rejestr r
A
B
C
D
E
H
L
111
000
001
010
011
100
101
Cykle Takty Czas
2 8 (4,4) 2,00μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny; inaczej
zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej
zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera parzystą
liczbę bitów o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b7 rejestru źródłowego przed
wykonaniem operacji.
Przykład: Jeśli rejestr D i znacznik C zawierają
C   b7 b6 b5 b4 b3 b2 b1 b0
0   1 0 0 0 1 1 1 1

to po wykonaniu instrukcji RL D zawartość rejestru D
oraz znacznika przeniesienia C jest następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 0 0 1 1 1 1 0

RL (HL)

ROTATE LEFT = Obracaj w lewo z przeniesieniem

Operacja: obrazek
Mnemonik: RL
Argumenty: (HL)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 0 1 0 1 1 CB
0 0 0 1 0 1 1 0 16
Opis: Zawartość komórki pamięci o adresie przechowywanym
przez parę rejestrów HL jest obracana w lewo o 1 bit.
Poprzednia zawartość bitu b7 trafia do znacznika
przeniesienia C. Pierwotna zawartość znacznika
przeniesienia C jest kopiowana do bitu b0.
Cykle Takty Czas
4 15 (4,4,4,3) 3,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny; inaczej
zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera parzystą liczbę
bitów o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b7 komórki pamięci przed wykonaniem
operacji.
Przykład: Jeśli para rejestrów HL zawiera adres 2000H, a komórka pod
tym adresem i znacznik C zawierają:
C   b7 b6 b5 b4 b3 b2 b1 b0
0   1 0 0 0 1 1 1 1

to po wykonaniu instrukcji RL (HL) zawartość komórki oraz
znacznika przeniesienia C jest następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 0 0 1 1 1 1 0

RL (IX+d)

ROTATE LEFT = Obracaj w lewo z przeniesieniem

Operacja: obrazek
Mnemonik: RL
Argumenty: (IX+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
d  
0 0 0 1 0 1 1 0 16
Opis: Zawartość komórki pamięci o adresie będącym sumą
zawartości rejestru indeksowego IX oraz przesunięcia d
jest obracana w lewo o 1 bit. Poprzednia zawartość
bitu b7 trafia do znacznika przeniesienia C. Pierwotna
zawartość znacznika przeniesienia C jest kopiowana
do bitu b0.
Cykle Takty Czas
6 23 (4,4,3,5,4,3) 5,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny; inaczej
zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera parzystą
liczbę bitów o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b7 komórki pamięci przed
wykonaniem operacji.
Przykład: Jeśli rejestr indeksowy IX zawiera 4000H, a komórka pod
adresem 4016H i znacznik C zawierają:
C   b7 b6 b5 b4 b3 b2 b1 b0
0   1 0 0 0 1 1 1 1

to po wykonaniu instrukcji RL (IX+16H) zawartość
komórki oraz znacznika przeniesienia C jest następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 0 0 1 1 1 1 0

RL (IY+d)

ROTATE LEFT = Obracaj w lewo z przeniesieniem

Operacja: obrazek
Mnemonik: RL
Argumenty: (IY+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
d  
0 0 0 1 0 1 1 0 16
Opis: Zawartość komórki pamięci o adresie będącym sumą
zawartości rejestru indeksowego IY oraz przesunięcia d
jest obracana w lewo o 1 bit. Poprzednia zawartość
bitu b7 trafia do znacznika przeniesienia C. Pierwotna
zawartość znacznika przeniesienia C jest kopiowana
do bitu b0.
Cykle Takty Czas
6 23 (4,4,3,5,4,3) 5,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny; inaczej
zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera parzystą
liczbę bitów o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b7 komórki pamięci przed wykonaniem
operacji.
Przykład: Jeśli rejestr indeksowy IY zawiera 4000H, a komórka pod
adresem 4016H i znacznik C zawierają
C   b7 b6 b5 b4 b3 b2 b1 b0
0   1 0 0 0 1 1 1 1

to po wykonaniu instrukcji RL (IY+16H) zawartość
komórki oraz znacznika przeniesienia C jest następująca:

C   b7 b6 b5 b4 b3 b2 b1 b0
1   0 0 0 1 1 1 1 0

RR r

ROTATE RIGHT = Obracaj w prawo z przeniesieniem

Operacja: obrazek
Mnemonik: RR
Argumenty: r
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 0 1 0 1 1 CB
0 0 0 1 1 ← r →  
Opis: Zawartość rejestru r  jest obracana w prawo o 1 bit. Poprzednia
zawartość bitu b0 trafia do znacznika przeniesienia C. Pierwotna
zawartość znacznika przeniesienia C jest kopiowana do bitu b7.
W kodzie operacyjnym instrukcji argument r  jest przedstawiony
następująco:
Rejestr r
A
B
C
D
E
H
L
111
000
001
010
011
100
101
Cykle Takty Czas
2 8 (4,4) 2,00μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny; inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera parzystą liczbę bitów
o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b0 rejestru źródłowego przed wykonaniem
operacji.
Przykład: Jeśli rejestr E i znacznik C zawierają:
b7 b6 b5 b4 b3 b2 b1 b0   C
1 1 0 1 1 1 0 1   0

to po wykonaniu instrukcji RR E zawartość rejestru E oraz
znacznika przeniesienia C jest następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
0 1 1 0 1 1 1 0   1

RR (HL)

ROTATE RIGHT = Obracaj w prawo z przeniesieniem

Operacja: obrazek
Mnemonik: RR
Argumenty: (HL)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 0 1 0 1 1 CB
0 0 0 1 1 1 1 0 1E
Opis: Zawartość komórki pamięci o adresie przechowywanym przez
parę rejestrów HL jest obracana w prawo o 1 bit. Poprzednia
zawartość bitu b0 trafia do znacznika przeniesienia C. Pierwotna
zawartość znacznika przeniesienia C jest kopiowana do bitu b7.
Cykle Takty Czas
4 15 (4,4,4,3) 3,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny; inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera parzystą liczbę bitów
o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b0 komórki pamięci przed wykonaniem operacji.
Przykład: Jeśli para rejestrów HL zawiera adres 4343H, a komórka pamięci
pod adresem 4343H i znacznik C zawierają:
b7 b6 b5 b4 b3 b2 b1 b0   C
1 1 0 1 1 1 0 1   0

to po wykonaniu instrukcji RR (HL) zawartość tej komórki oraz
znacznika przeniesienia C jest następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
0 1 1 0 1 1 1 0   1

RR (IX+d)

ROTATE RIGHT = Obracaj w prawo z przeniesieniem

Operacja: obrazek
Mnemonik: RR
Argumenty: (IX+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
d  
0 0 0 1 1 1 1 0 1E
Opis: Zawartość komórki pamięci o adresie będącym sumą
zawartości rejestru indeksowego IX oraz przesunięcia d
jest obracana w prawo o 1 bit. Poprzednia zawartość
bitu b0 trafia do znacznika przeniesienia C. Pierwotna
zawartość znacznika przeniesienia C jest kopiowana do
bitu b7.
Cykle Takty Czas
6 23 (4,4,3,5,4,3) 5,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny; inaczej
zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera parzystą liczbę
bitów o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b0 komórki pamięci przed wykonaniem
operacji.
Przykład: Jeśli rejestr indeksowy IX zawiera adres 6000H, a komórka
pamięci pod adresem 6008H i znacznik C zawierają:
b7 b6 b5 b4 b3 b2 b1 b0   C
1 1 0 1 1 1 0 1   0

to po wykonaniu instrukcji RR (IX+8H) zawartość tej
komórki oraz znacznika przeniesienia C jest następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
0 1 1 0 1 1 1 0   1

RR (IY+d)

ROTATE RIGHT = Obracaj w prawo z przeniesieniem

Operacja: obrazek
Mnemonik: RR
Argumenty: (IY+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
d  
0 0 0 1 1 1 1 0 1E
Opis: Zawartość komórki pamięci o adresie będącym sumą zawartości
rejestru indeksowego IY oraz przesunięcia d jest obracana w prawo
o 1 bit. Poprzednia zawartość bitu b0 trafia do znacznika
przeniesienia C. Pierwotna zawartość znacznika przeniesienia C
jest kopiowana do bitu b7
Cykle Takty Czas
6 23 (4,4,3,5,4,3) 5,75μs
Zmieniane znaczniki: S jest ustawiany na 1, jeśli wynik jest ujemny; inaczej zerowany
Z jest ustawiany na 1, jeśli wynik zero; inaczej zerowany
H jest zerowany
P/V jest ustawiany na 1, jeśli wynik zawiera parzystą liczbę bitów
o stanie 1; inaczej zerowany
N jest zerowany
C zawiera stan bitu b0 komórki pamięci przed wykonaniem operacji.
Przykład: Jeśli rejestr indeksowy IX zawiera adres 6000H, a komórka pamięci
pod adresem 6008H i znacznik C zawierają
b7 b6 b5 b4 b3 b2 b1 b0   C
1 1 0 1 1 1 0 1   0

to po wykonaniu instrukcji RR (IY+8H) zawartość tej komórki oraz
znacznika przeniesienia C jest następująca:

b7 b6 b5 b4 b3 b2 b1 b0   C
0 1 1 0 1 1 1 0   1

do podrozdziału  do strony 

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: i-lo@eduinf.waw.pl
Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.

Informacje dodatkowe.