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 – 5

SPIS TREŚCI

Opis instrukcji mikroprocesora Z80 – 5

Grupa instrukcji logiki 8 bitowej

AND r

LOGICAL AND = Logiczne i

Operacja: AA obrazek r
Mnemonik: AND
Argumenty: r
b7 b6 b5 b4 b3 b2 b1 b0
1 0 1 0 0 ← r →  
Opis: Operacja logiczna koniunkcji jest
wykonywana pomiędzy bajtem
określonym przez rejestr r a bajtem
zawartym w Akumulatorze; wynik
jest umieszczany w Akumulatorze
Symbol r  odnosi się do rejestrów
A, B, C, D, E, H i L, które w kodzie
operacyjnym instrukcji są
przedstawione następująco:
Rejestr   r
A
B
C
D
E
H
L
  111
000
001
010
011
100
101
Cykle Takty Czas
1 4 1,00μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H ustawiany na 1
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli rejestr B zawiera
7BH
(0111 1011),
a Akumulator zawiera
0C3H
(1100 0011),
to po wykonaniu instrukcji AND B
Akumulator będzie zawierał
43H
(0100 0011).

AND n

LOGICAL AND = Logiczne i

Operacja: AA obrazek n
Mnemonik: AND
Argumenty: n
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 0 0 1 1 0 E6
← n →  
Opis: Operacja logiczna koniunkcji jest
wykonywana pomiędzy liczbą n
a bajtem zawartym w Akumulatorze;
wynik jest umieszczany
w Akumulatorze.
Cykle Takty Czas
2 7 (4,3) 1,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H ustawiany na 1
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 0C3H
(1100 0011), to po wykonaniu
instrukcji AND 7BH (0111 1011)
Akumulator będzie zawierał 43H
(0100 0011).

AND (HL)

LOGICAL AND = Logiczne i

Operacja: AA obrazek (HL)
Mnemonik: AND
Argumenty: (HL)
b7 b6 b5 b4 b3 b2 b1 b0
1 0 1 0 0 1 1 0 A6
Opis: Operacja logiczna koniunkcji jest
wykonywana pomiędzy bajtem
pamięci wskazywanym zawartością
pary rejestrów HL a bajtem
zawartym w Akumulatorze; wynik
jest umieszczany w Akumulatorze.
Cykle Takty Czas
2 7 (4,3) 1,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H ustawiany na 1
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 0C3H
(1100 0011)
, para rejestrów HL
zawiera 1000H, a komórka
pamięci o adresie 1000H zawiera
7BH (0111 1011), to po wykonaniu
instrukcji AND (HL) Akumulator
będzie zawierał 43H (0100 0011).

AND (IX+d)

LOGICAL AND = Logiczne i

Operacja: AA obrazek (IX+d)
Mnemonik: AND
Argumenty: (IX+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 1 1 1 0 1 DD
1 0 1 0 0 1 1 0 A6
← d →  
Opis: Zawartość rejestru indeksowego IX
jest dodawana do przesunięcia d
w kodzie U2 w celu uzyskania
adresu komórki pamięci. Operacja
logiczna koniunkcji jest wykonywana
pomiędzy bajtem pamięci
wskazywanym przez obliczony
adres a bajtem zawartym
w Akumulatorze; wynik jest
umieszczany w Akumulatorze.
Cykle Takty Czas
5 19 (4,4,3,5,3) 4,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H ustawiany na 1
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 0C3H
(1100 0011), Rejestr indeksowy IX
zawiera 1000H, a komórka pamięci
o adresie 1005H zawiera 7BH
(0111 1011)
, to po wykonaniu
instrukcji AND (IX+05H)
Akumulator będzie zawierał 43H
(0100 0011).

AND (IY+d)

LOGICAL AND = Logiczne i

Operacja: AA obrazek (IY+d)
Mnemonik: AND
Argumenty: (IY+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 1 1 1 0 1 FD
1 0 1 0 0 1 1 0 A6
← d →  
Opis: Zawartość rejestru indeksowego IY
jest dodawana do przesunięcia d
w kodzie U2 w celu uzyskania
adresu komórki pamięci. Operacja
logiczna koniunkcji jest
wykonywana pomiędzy bajtem
pamięci wskazywanym przez
obliczony adres a bajtem
zawartym w Akumulatorze; wynik
jest umieszczany w Akumulatorze.
Cykle Takty Czas
5 19 (4,4,3,5,3) 4,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H ustawiany na 1
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 0C3H
(1100 0011)
, Rejestr indeksowy IY
zawiera 1000H, a komórka pamięci
o adresie 1005H zawiera 7BH
(0111 1011)
, to po wykonaniu
instrukcji AND (IY+05H)
Akumulator będzie zawierał 43H
(0100 0011)
.

OR r

LOGICAL OR = Logiczne lub

Operacja: AA obrazek r
Mnemonik: OR
Argumenty: r
b7 b6 b5 b4 b3 b2 b1 b0
1 0 1 1 0 ← r →  
Opis: Operacja logiczna alternatywy jest
wykonywana pomiędzy bajtem
określonym przez rejestr  r a bajtem
zawartym w Akumulatorze; wynik
jest umieszczany w Akumulatorze.
Symbol r  odnosi się do rejestrów
A
, B, C, D, E, H i L, które w kodzie
operacyjnym instrukcji są
przedstawione następująco:
Rejestr   r
A
B
C
D
E
H
L
  111
000
001
010
011
100
101
Cykle Takty Czas
1 4 1,00μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli rejestr H zawiera 48H
(0100 1000)
, a Akumulator zawiera
12H
(0001 0010), to po wykonaniu
instrukcji OR H Akumulator będzie
zawierał 5AH (0101 1010).

OR n

LOGICAL OR = Logiczne lub

Operacja: AA obrazek n
Mnemonik: OR
Argumenty: n
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 1 0 1 1 0 F6
← n →  
Opis: Operacja logiczna alternatywy jest
wykonywana pomiędzy liczbą n
a bajtem zawartym w Akumulatorze;
wynik jest umieszczany
w Akumulatorze.
Cykle Takty Czas
2 7 (4,3) 1,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 12H
(0001 0010)
, to po wykonaniu
instrukcji OR 48H (0100 1000)
Akumulator będzie zawierał 5AH
(0101 1010)
.

OR (HL)

LOGICAL OR = Logiczne lub

Operacja: AA obrazek (HL)
Mnemonik: OR
Argumenty: (HL)
b7 b6 b5 b4 b3 b2 b1 b0
1 0 1 1 0 1 1 0 B6
Opis: Operacja logiczna alternatywy jest
wykonywana pomiędzy bajtem
pamięci wskazywanym zawartością
pary rejestrów HL a bajtem zawartym
w Akumulatorze; wynik jest
umieszczany w Akumulatorze.
Cykle Takty Czas
2 7 (4,3) 1,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 12H
(0001 0010), para rejestrów HL
zawiera 1000H, a komórka pamięci
o adresie 1000H zawiera 48H
(0100 1000)
, to po wykonaniu
instrukcji OR (HL) Akumulator
będzie zawierał 5AH (0101 1010).

OR (IX+d)

LOGICAL OR = Logiczne lub

Operacja: AA obrazek (IX+d)
Mnemonik: OR
Argumenty: (IX+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 1 1 1 0 1 DD
1 0 1 1 0 1 1 0 B6
← d →  
Opis: Zawartość rejestru indeksowego IX
jest dodawana do przesunięcia d
w kodzie U2 w celu uzyskania
adresu komórki pamięci. Operacja
logiczna alternatywy jest
wykonywana pomiędzy bajtem
pamięci wskazywanym przez
obliczony adres a bajtem zawartym
w Akumulatorze; wynik jest
umieszczany w Akumulatorze.
Cykle Takty Czas
5 19 (4,4,3,5,3) 4,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 12H
(0001 0010)
. Rejestr indeksowy
IX
zawiera 1000H, a komórka
pamięci o adresie 1005H zawiera
48H
(0100 1000), to po
wykonaniu instrukcji OR (IX+05H)
Akumulator będzie zawierał 5AH
(0101 1010)
.

OR (IY+d)

LOGICAL OR = Logiczne lub

Operacja: AA obrazek (IY+d)
Mnemonik: OR
Argumenty: (IY+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 1 1 1 0 1 FD
1 0 1 1 0 1 1 0 D6
← d →  
Opis: Zawartość rejestru indeksowego IY
jest dodawana do przesunięcia d
w kodzie U2 w celu uzyskania
adresu komórki pamięci. Operacja
logiczna alternatywy jest
wykonywana pomiędzy bajtem
pamięci wskazywanym przez
obliczony adres a bajtem zawartym
w Akumulatorze; wynik jest
umieszczany w Akumulatorze.
Cykle Takty Czas
5 19 (4,4,3,5,3) 4,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 12H
(0001 0010)
, Rejestr indeksowy IY
zawiera 1000H, a komórka pamięci
o adresie 1005H zawiera 48H
(0100 1000)
, to po wykonaniu
instrukcji OR (IY+05H) Akumulator
będzie zawierał 5AH (0101 1010).

XOR r

EXCLUSIVE OR = Suma modulo 2

Operacja: AA obrazek r
Mnemonik: XOR
Argumenty: r
b7 b6 b5 b4 b3 b2 b1 b0
1 0 1 0 1 ← r →  
Opis: Operacja logiczna różnicy symetrycznej
jest wykonywana pomiędzy bajtem
określonym przez rejestr r  a bajtem
zawartym w Akumulatorze; wynik jest
umieszczany w Akumulatorze. Symbol r
odnosi się do rejestrów A, B, C, D, E, H i L,
które w kodzie operacyjnym instrukcji są
przedstawione następująco:
Rejestr   r
A
B
C
D
E
H
L
  111
000
001
010
011
100
101
Cykle Takty Czas
1 4 1,00μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej
liczby bitów 1 w wyniku, inaczej
zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli rejestr D zawiera 5DH
(0101 1101)
, a Akumulator zawiera
96H
(1001 0110), to po wykonaniu
instrukcji XOR H Akumulator będzie
zawierał 0CBH (1100 1011).

XOR n

EXCLUSIVE OR = Suma modulo 2

Operacja: AA obrazek n
Mnemonik: XOR
Argumenty: n
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 0 1 1 1 0 EE
← n →  
Opis: Operacja logiczna różnicy symetrycznej
jest wykonywana pomiędzy liczbą n
a bajtem zawartym w Akumulatorze;
wynik jest umieszczany w Akumulatorze.
Cykle Takty Czas
2 7 (4,3) 1,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest ujemny;
inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 96H
(1001 0110))
, to po wykonaniu instrukcji
XOR 5DH (0101 1101) Akumulator będzie
zawierał 0CBH (1100 1011).

XOR (HL)

EXCLUSIVE OR = Suma modulo 2

Operacja: AA obrazek (HL)
Mnemonik: XOR
Argumenty: (HL)
b7 b6 b5 b4 b3 b2 b1 b0
1 0 1 0 1 1 1 0 AE
Opis: Operacja logiczna różnicy symetrycznej
jest wykonywana pomiędzy bajtem
pamięci wskazywanym zawartością
pary rejestrów HL a bajtem zawartym
w Akumulatorze; wynik jest umieszczany
w Akumulatorze.
Cykle Takty Czas
2 7 (4,3) 1,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest ujemny;
inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku, inaczej
zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 96H
(1001 0110)
, para rejestrów HL zawiera
1000H
, a komórka pamięci o adresie
1000H
zawiera 5DH (0101 1101), to po
wykonaniu instrukcji XOR (HL)
Akumulator będzie zawierał 0CBH
(1100 1011)
.

XOR (IX+d)

EXCLUSIVE OR = Suma modulo 2

Operacja: A ← A obrazek (IX+d)
Mnemonik: XOR
Argumenty: (IX+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 0 1 1 1 0 1 DD
1 0 1 0 1 1 1 0 AE
← d →  
Opis: Zawartość rejestru indeksowego IX
jest dodawana do przesunięcia d
w kodzie U2 w celu uzyskania
adresu komórki pamięci. Operacja
logiczna różnicy symetrycznej jest
wykonywana pomiędzy bajtem
pamięci wskazywanym przez
obliczony adres a bajtem zawartym
w Akumulatorze; wynik jest
umieszczany w Akumulatorze.
Cykle Takty Czas
5 19 (4,4,3,5,3) 4,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 96H
(1001 0110)
, Rejestr indeksowy IX
zawiera 1000H, a komórka pamięci
o adresie 1005H zawiera 5DH
(0101 1101)
, to po wykonaniu
instrukcji XOR (IX+05H)
Akumulator będzie zawierał 0CBH
(1100 1011)
.

XOR (IY+d)

EXCLUSIVE OR = Suma modulo 2

Operacja: AA obrazek (IY+d)
Mnemonik: XOR
Argumenty: (IY+d)
b7 b6 b5 b4 b3 b2 b1 b0
1 1 1 1 1 1 0 1 FD
1 0 1 0 1 1 1 0 AE
← d →  
Opis: Zawartość rejestru indeksowego IY
jest dodawana do przesunięcia d
w kodzie U2 w celu uzyskania
adresu komórki pamięci. Operacja
logiczna różnicy symetrycznej jest
wykonywana pomiędzy bajtem
pamięci wskazywanym przez
obliczony adres a bajtem
zawartym w Akumulatorze; wynik
jest umieszczany w Akumulatorze.
Cykle Takty Czas
5 19 (4,4,3,5,3) 4,75μs
Zmieniane znaczniki: S ustawiany na 1, jeśli wynik jest
ujemny; inaczej zerowany
Z ustawiany na 1, jeśli wynik zero;
inaczej zerowany
H jest zerowany
P/V ustawiany na 1 w przypadku
parzystej liczby bitów 1 w wyniku,
inaczej zerowany
N jest zerowany
C jest zerowany
Przykład: Jeśli Akumulator zawiera 96H
(1001 0110)
, Rejestr indeksowy IY
zawiera 1000H, a komórka pamięci
o adresie 1005H zawiera 5DH
(0101 1101)
, to po wykonaniu
instrukcji XOR (IY+05H)
 Akumulator będzie zawierał 0CBH
(1100 1011)
.

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.