RRC Rotate bits right with Carry
Rotate bits left with carry
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
---|---|---|---|---|---|---|---|---|
RRCA | ||||||||
0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0F |
RRC r | ||||||||
1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | CB |
0 | 0 | 0 | 0 | 1 | r | |||
RRC (HL) | ||||||||
1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | CB |
0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0E |
RRC (IX+d) | ||||||||
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 |
RRC (IY+d) | ||||||||
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 |
Register | r |
---|---|
B | 000 |
C | 001 |
D | 010 |
E | 011 |
H | 100 |
L | 101 |
A | 111 |
Flags Affected
Flags |
| ||||||||
---|---|---|---|---|---|---|---|---|---|
s | set if result negative | ||||||||
z | set if result is 0 | ||||||||
h | reset | ||||||||
p/v | set if parity even, reset if parity odd | ||||||||
c | data from bit 0 of source register |
Opcode Matrix
A | B | C | D | E | H | L | (HL) | (IX+d) | (IY+d) | |
---|---|---|---|---|---|---|---|---|---|---|
RRC |
RRCA
0F14 |
|
|
|
|
|
|
|
|
|
RRC |
RRC A
CB0F28 |
RRC B
CB0828 |
RRC C
CB0928 |
RRC D
CB0A28 |
RRC E
CB0B28 |
RRC H
CB0C28 |
RRC L
CB0D28 |
RRC (HL)
CB0E215 |
RRC (IX+d)
DDCBnn0E423 |
RRC (IY+d)
FDCBnn0E423 |
Instruction
Opcode hexSize bytesCycle count
| Register | Memory |
Last modified November 16, 2021: Add flags to rot operations (2eee171)