RCR
Instruction: Rotate C right into value by specified number of bits.
RCR Value, < # > Bits
Result: Value has Bits copies of C rotated right into it.
- Value (d-field) is the register in which to rotate C rightwards.
- Bits (s-field) is a register or a 5-bit literal whose value is the number of bits of Value to rotate C rightwards into.
Opcode Table:
–INSTR– ZCRI –CON– –DEST– –SRC– | Z Result | C Result | Result | Clocks |
001100 001i 1111 ddddddddd sssssssss | Result = 0 | D[0] | Written | 4 |
Concise Truth Table:
In | Out | ||||||
Destination | Source | Z | C | Effects | Destination | Z | C |
$0000_0001; 1 | $0000_0000; 0 | - | x | wz wc | $0000_0001; 1 | 0 | 1 |
$0000_0001; 1 | $0000_0001; 1 | - | 0 | wz wc | $0000_0000; 0 | 1 | 1 |
$0000_0001; 1 | $0000_0001; 1 | - | 1 | wz wc | $8000_0000; -2,147,483,648 | 0 | 1 |
$18C2_1084; 415,371,396 | $0000_0002; 2 | - | 0 | wz wc | $0630_8421; 103,842,849 | 0 | 0 |
$18C2_1084; 415,371,396 | $0000_0002; 2 | - | 1 | wz wc | $C630_8421; -969,898,975 | 0 | 0 |
$8765_4321; -2,023,406,815 | $0000_0004; 4 | - | 0 | wz wc | $0876_5432; 141,972,530 | 0 | 1 |
$8765_4321; -2,023,406,815 | $0000_0004; 4 | - | 1 | wz wc | $F876_5432; -126,462,926 | 0 | 1 |
Explanation
RCR (Rotate Carry Right) performs a rotate right of Value, Bits times, using the C flag's original value for each of the MSBs affected.
If the WZ effect is specified, the Z flag is set (1) if the resulting Value equals zero. If the WC effect is specified, at the end of the operation, the C flag is set equal to Value's original bit 0. The result is written to Value unless the NR effect is specified.
Unless otherwise noted, content on this site is licensed under the
Creative Commons Attribution-ShareAlike 4.0 International License.