Difference between revisions of "PM Opc DEC"
From SublabWiki
m (→Examples) |
m (→Execute) |
||
Line 57: | Line 57: | ||
=== Execute === | === Execute === | ||
− | A = Register A | + | A = (8-Bits) Register A |
− | B = Register B | + | B = (8-Bits) Register B |
− | L = Register L | + | L = (8-Bits) Register L |
− | H = Register H | + | H = (8-Bits) Register H |
− | N = Register N | + | N = (8-Bits) Register N |
− | SP = Register SP (Stack Pointer) | + | SP = (16-Bits) Register SP (Stack Pointer) |
− | BA = Register BA: (B shl 8) or A | + | BA = (16-Bits) Register BA: (B shl 8) or A |
− | HL = Register HL: (H shl 8) or L | + | HL = (16-Bits) Register HL: (H shl 8) or L |
− | X = Register X | + | X = (16-Bits) Register X |
− | Y = Register Y | + | Y = (16-Bits) Register Y |
− | [N+#nn] = Memory: (I shl 16) or (N shl 8) or #nn | + | [N+#nn] = (8-Bits) Memory: (I shl 16) or (N shl 8) or #nn |
− | [HL] = Memory: (I shl 16) or HL | + | [HL] = (8-Bits) Memory: (I shl 16) or HL |
; DEC Ds | ; DEC Ds | ||
Line 75: | Line 75: | ||
Ds = Ds - 1 | Ds = Ds - 1 | ||
− | + | ||
=== Description === | === Description === | ||
Latest revision as of 00:38, 21 April 2009
DEC = Decrease Register by 1
Hex | Mnemonic | Cycles |
---|---|---|
88 | DEC A | 8 |
89 | DEC B | 8 |
8A | DEC L | 8 |
8B | DEC H | 8 |
8C | DEC N | 8 |
8D nn | DEC [N+#nn] | 16 |
8E | DEC [HL] | 12 |
8F | DEC SP | 8 |
98 | DEC BA | 8 |
99 | DEC HL | 8 |
9A | DEC X | 8 |
9B | DEC Y | 8 |
Execute
A = (8-Bits) Register A B = (8-Bits) Register B L = (8-Bits) Register L H = (8-Bits) Register H N = (8-Bits) Register N SP = (16-Bits) Register SP (Stack Pointer) BA = (16-Bits) Register BA: (B shl 8) or A HL = (16-Bits) Register HL: (H shl 8) or L X = (16-Bits) Register X Y = (16-Bits) Register Y [N+#nn] = (8-Bits) Memory: (I shl 16) or (N shl 8) or #nn [HL] = (8-Bits) Memory: (I shl 16) or HL
; DEC Ds ; ; Ds = Source/Destination Ds = Ds - 1
Description
"Destination" is decremented by 1.
Conditions
Zero: Set when result is 0
Carry, Overflow and Sign remain unchanged
Examples
; A = 0x55 DEC A ; A = 0x54 (0x55 - 1 = 0x54) ; F = (Zero=0)
; [N+0x88] = 0xFF DEC [N+$88] ; [N+0x88] = 0xFE (0xFF - 1 = 0xFE) ; F = (Zero=0)
; BA = 0x2997 DEC BA ; BA = 0x2996 (0x2997 - 1 = 0x2996) ; F = (Zero=0)
; X = 0xFFFF DEC X ; X = 0xFFFE (0xFFFF - 1 = 0xFFFE) ; F = (Zero=0)