Zestaw instrukcji mikroprocesora Z80


Grupa instrukcji arytmetyki 8 bitowej

 

ADD A,r

      

ADD = Dodaj

Operacja:   A ← A + r
Mnemonik:   ADD
Argumenty:   A,r
 
1 0 0 0 0 r  
Opis:  

Zawartość rejestru r jest dodawana do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 44H, a rejestr C 11H, to po wykonaniu ADD A,C w Akumulatorze znajdzie się wynik 55H.

 


 

ADD A,n

      

ADD = Dodaj

Operacja:   A ← A + n
Mnemonik:   ADD
Argumenty:   A,n
 
1 1 0 0 0 1 1 0 C6
← n →  
Opis:   Liczba całkowita n jest dodawana do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 23H, to po wykonaniu ADD A,33H w Akumulatorze znajdzie się wynik 56H.

 


 

ADD A,(HL)

      

ADD = Dodaj

Operacja:   A ← A + (HL)
Mnemonik:   ADD
Argumenty:   A,(HL)
 
1 0 0 0 0 1 1 0 86
Opis:   Bajt umieszczony w komórce pamięci, której adres przechowuje para rejestrów HL jest dodawany do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 0A0H, a zawartość pary rejestrów HL wynosi 2323H i w komórce pamięci o adresie 2323H jest bajt o wartości 08H, to po wykonaniu ADD A,(HL) w Akumulatorze znajdzie się wynik 0A8H.

 


 

ADD A,(IX+d)

      

ADD = Dodaj

Operacja:   A ← A + (IX+d)
Mnemonik:   ADD
Argumenty:   A,(IX+d)
 
1 1 0 1 1 1 0 1 DD
1 0 0 0 0 1 1 0 86
← d →  
Opis:   Zawartość rejestru indeksowego IX jest dodawana do przesunięcia d w kodzie U2 w celu uzyskania adresu komórki pamięci. Zawartość tego adresu jest następnie dodawana do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 11H, rejestr indeksowy IX zawiera 1000H, a komórka pamięci o adresie 1005H zawiera 22H, to po wykonaniu ADD A,(IX+5H) w Akumulatorze znajdzie się wynik 33H.

 


 

ADD A,(IY+d)

      

ADD = Dodaj

Operacja:   A ← A + (IY+d)
Mnemonik:   ADD
Argumenty:   A,(IY+d)
 
1 1 1 1 1 1 0 1 FD
1 0 0 0 0 1 1 0 86
← d →  
Opis:   Zawartość rejestru indeksowego IY jest dodawana do przesunięcia d w kodzie U2 w celu uzyskania adresu komórki pamięci. Zawartość tego adresu jest następnie dodawana do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 11H, rejestr indeksowy IY zawiera 1000H, a komórka pamięci o adresie 1005H zawiera 22H, to po wykonaniu ADD A,(IY+5H) w Akumulatorze znajdzie się wynik 33H.

 


 

ADC A,r

      

ADD WITH CARRY = Dodaj z przeniesieniem

Operacja:   A ← A + r + znacznik C
Mnemonik:   ADC
Argumenty:   A,r
 
1 0 0 0 1 r  
Opis:   Zawartość rejestru r wraz ze znacznikiem przeniesienia C w rejestrze F jest dodawana do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 16H, znacznik przeniesienia C jest ustawiony na 1, a rejestr H zawiera 10H, to po wykonaniu ADC A,H w Akumulatorze znajdzie się wynik 27H.

 


 

ADC A,n

      

ADD WITH CARRY = Dodaj z przeniesieniem

Operacja:   A ← A + n + znacznik C
Mnemonik:   ADC
Argumenty:   A,n
 
1 1 0 0 1 1 1 0 CE
← n →  
Opis:   Liczba całkowita n wraz ze znacznikiem przeniesienia C w rejestrze F jest dodawana do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 23H, znacznik przeniesienia C jest ustawiony, to po wykonaniu ADC A,33H w Akumulatorze znajdzie się wynik 57H.

 


 

ADC A,(HL)

      

ADD WITH CARRY = Dodaj z przeniesieniem

Operacja:   A ← A + (HL) + znacznik C
Mnemonik:   ADC
Argumenty:   A,(HL)
 
1 0 0 0 1 1 1 0 8E
Opis:   Bajt umieszczony w komórce pamięci, której adres przechowuje para rejestrów HL wraz ze znacznikiem przeniesienia C w rejestrze F jest dodawany do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 0A0H, znacznik przeniesienia C jest ustawiony na 1, zawartość pary rejestrów HL wynosi 2323H i w komórce pamięci o adresie 2323H jest bajt o wartości 08H, to po wykonaniu ADD A,(HL) w Akumulatorze znajdzie się wynik 0A9H.

 


 

ADC A,(IX+d)

      

ADD WITH CARRY = Dodaj z przeniesieniem

Operacja:   A ← A + (IX+d) + znacznik C
Mnemonik:   ADC
Argumenty:   A,(IX+d)
 
1 1 0 1 1 1 0 1 DD
1 0 0 0 1 1 1 0 8E
← d →  
Opis:   Zawartość rejestru indeksowego IX jest dodawana do przesunięcia d w kodzie U2 w celu uzyskania adresu komórki pamięci. Zawartość tego adresu wraz ze znacznikiem przeniesienia C w rejestrze F jest następnie dodawana do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 11H, znacznik przeniesienia C jest ustawiony na 1, rejestr indeksowy IX zawiera 1000H, a komórka pamięci o adresie 1005H zawiera 22H, to po wykonaniu ADD A,(IX+5H) w Akumulatorze znajdzie się wynik 34H.

 


 

ADC A,(IY+d)

      

ADD WITH CARRY = Dodaj z przeniesieniem

Operacja:   A ← A + (IY+d) + znacznik C
Mnemonik:   ADC
Argumenty:   A,(IY+d)
 
1 1 1 1 1 1 0 1 FD
1 0 0 0 1 1 1 0 8E
← d →  
Opis:   Zawartość rejestru indeksowego IY jest dodawana do przesunięcia d w kodzie U2 w celu uzyskania adresu komórki pamięci. Zawartość tego adresu wraz ze znacznikiem przeniesienia C w rejestrze F jest następnie dodawana do zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiło przeniesienie z bitu 3; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest zerowany
C ustawiany na 1 w przypadku przeniesienia z bitu 7; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 11H, znacznik przeniesienia C jest ustawiony na 1, rejestr indeksowy IY zawiera 1000H, a komórka pamięci o adresie 1005H zawiera 22H, to po wykonaniu ADD A,(IY+5H) w Akumulatorze znajdzie się wynik 34H.

 


 

SUB r

      

SUBTRACT = Odejmij

Operacja:   A ← A - r
Mnemonik:   SUB
Argumenty:   r
 
1 0 0 1 0 r  
Opis:   Zawartość rejestru r jest odejmowana od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, a rejestr D zawiera 11H, to po wykonaniu SUB D w Akumulatorze znajdzie się wynik 18H.

 


 

SUB n

      

SUBTRACT = Odejmij

Operacja:   A ← A - n
Mnemonik:   SUB
Argumenty:   n
 
1 1 0 1 0 1 1 0 D6
← n →  
Opis:   Liczba całkowita n jest odejmowana od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, to po wykonaniu SUB 11H w Akumulatorze znajdzie się wynik 18H.

 


 

SUB (HL)

      

SUBTRACT = Odejmij

Operacja:   A ← A - (HL)
Mnemonik:   SUB
Argumenty:   (HL)
 
1 0 0 1 0 1 1 0 96
Opis:   Bajt umieszczony w komórce pamięci, której adres przechowuje para rejestrów HL jest odejmowany od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, para rejestrów HL zawiera 1000H, a komórka pamięci pod adresem 1000H zawiera 11H, to po wykonaniu SUB (HL) w Akumulatorze znajdzie się wynik 18H.

 


 

SUB (IX+d)

      

SUBTRACT = Odejmij

Operacja:   A ← A - (IX+d)
Mnemonik:   SUB
Argumenty:   (IX+d)
 
1 1 0 1 1 1 0 1 DD
1 0 0 1 0 1 1 0 96
← d →  
Opis:   Zawartość rejestru indeksowego IX jest dodawana do przesunięcia d w kodzie U2 w celu uzyskania adresu komórki pamięci. Zawartość tego adresu jest odejmowana od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, rejestr indeksowy IX zawiera 1000H, a komórka pamięci pod adresem 1005H zawiera 11H, to po wykonaniu SUB (IX+05H) w Akumulatorze znajdzie się wynik 18H.

 


 

SUB (IY+d)

      

SUBTRACT = Odejmij

Operacja:   A ← A - (IY+d)
Mnemonik:   SUB
Argumenty:   (IY+d)
 
1 1 1 1 1 1 0 1 FD
1 0 0 1 0 1 1 0 96
← d →  
Opis:   Zawartość rejestru indeksowego IY jest dodawana do przesunięcia d w kodzie U2 w celu uzyskania adresu komórki pamięci. Zawartość tego adresu jest odejmowana od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, rejestr indeksowy IY zawiera 1000H, a komórka pamięci pod adresem 1005H zawiera 11H, to po wykonaniu SUB (IY+05H) w Akumulatorze znajdzie się wynik 18H.

 


 

SBC A,r

      

SUBTRACT WITH CARRY = Odejmij z przeniesieniem

Operacja:   A ← A - r - przeniesienie C
Mnemonik:   SBC
Argumenty:   A,r
 
1 0 0 1 1 r  
Opis:   Zawartość rejestru r wraz ze znacznikiem przeniesienia C w rejestrze F jest odejmowana od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, znacznik przeniesienia C jest ustawiony na 1, a rejestr D zawiera 11H, to po wykonaniu SBC A,D w Akumulatorze znajdzie się wynik 17H.

 


 

SBC A,n

      

SUBTRACT WITH CARRY = Odejmij z przeniesieniem

Operacja:   A ← A - n - przeniesienie C
Mnemonik:   SBC
Argumenty:   A,n
 
1 1 0 1 1 1 1 0 DE
← n →  
Opis:   Liczba całkowita n wraz ze znacznikiem przeniesienia C w rejestrze F jest odejmowana od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, znacznik przeniesienia C jest ustawiony na 1, to po wykonaniu SBC 11H w Akumulatorze znajdzie się wynik 17H.

 


 

SBC A,(HL)

      

SUBTRACT WITH CARRY = Odejmij z przeniesieniem

Operacja:   A ← A - (HL) - przeniesienie C
Mnemonik:   SBC
Argumenty:   A,(HL)
 
1 0 0 1 1 1 1 0 9E
Opis:   Bajt umieszczony w komórce pamięci wraz ze znacznikiem przeniesienia C w rejestrze F o adresie przechowywanym przez parę rejestrów HL jest odejmowany od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, znacznik przeniesienia C jest ustawiony na 1, para rejestrów HL zawiera 1000H, a komórka pamięci pod adresem 1000H zawiera 11H, to po wykonaniu SBC A,(HL) w Akumulatorze znajdzie się wynik 17H.

 


 

SBC A,(IX+d)

      

SUBTRACT WITH CARRY = Odejmij z przeniesieniem

Operacja:   A ← A - (IX+d) - przeniesienie C
Mnemonik:   SBC
Argumenty:   A,(IX+d)
 
1 1 0 1 1 1 0 1 DD
1 0 0 1 1 1 1 0 9E
← d →  
Opis:   Zawartość rejestru indeksowego IX jest dodawana do przesunięcia d w kodzie U2 w celu uzyskania adresu komórki pamięci. Zawartość tego adresu wraz ze znacznikiem przeniesienia C w rejestrze F jest odejmowana od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, znacznik przeniesienia C jest ustawiony na 1, rejestr indeksowy IX zawiera 1000H, a komórka pamięci pod adresem 1005H zawiera 11H, to po wykonaniu SBC A,(IX+05H) w Akumulatorze znajdzie się wynik 17H.

 


 

SBC A,(IY+d)

      

SUBTRACT WITH CARRY = Odejmij z przeniesieniem

Operacja:   A ← A - (IY+d) - przeniesienie C
Mnemonik:   SBC
Argumenty:   A,(IY+d)
 
1 1 1 1 1 1 0 1 FD
1 0 0 1 1 1 1 0 9E
← d →  
Opis:   Zawartość rejestru indeksowego IY jest dodawana do przesunięcia d w kodzie U2 w celu uzyskania adresu komórki pamięci. Zawartość tego adresu wraz ze znacznikiem przeniesienia C w rejestrze F jest odejmowana od zawartości Akumulatora, a wynik zostaje umieszczony również 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, jeśli wystąpiła pożyczka z bitu 4; inaczej zerowany
P/V ustawiany na 1 w przypadku przepełnienia; inaczej zerowany
N jest ustawiany na 1
C ustawiany na 1 w przypadku pożyczki; inaczej zerowany
Przykład:   Jeśli Akumulator posiada zawartość 29H, znacznik przeniesienia C jest ustawiony na 1, rejestr indeksowy IY zawiera 1000H, a komórka pamięci pod adresem 1005H zawiera 11H, to po wykonaniu SBC A,(IY+05H) w Akumulatorze znajdzie się wynik 17H.

 



List do administratora Serwisu Edukacyjnego Nauczycieli I LO

Twój email: (jeśli chcesz otrzymać odpowiedź)
Temat:
Uwaga: ← tutaj wpisz wyraz  ilo , inaczej list zostanie zignorowany

Poniżej wpisz swoje uwagi lub pytania dotyczące tego rozdziału (max. 2048 znaków).

Liczba znaków do wykorzystania: 2048

 

W związku z dużą liczbą listów do naszego serwisu edukacyjnego nie będziemy udzielać odpowiedzi na prośby rozwiązywania zadań, pisania programów zaliczeniowych, przesyłania materiałów czy też tłumaczenia zagadnień szeroko opisywanych w podręcznikach.



   I Liceum Ogólnokształcące   
im. Kazimierza Brodzińskiego
w Tarnowie

©2018 mgr Jerzy Wałaszek

Dokument ten rozpowszechniany jest zgodnie z zasadami licencji
GNU Free Documentation License.