RCR ROTATE THROUGH RCR

CARRY RIGHT

Operation:

Flags Affected:

(temp) - COUNT

CF,OF

do while (temp) =1= 0

 

(tmpcf) - (CF)

 

(CF) - low-order bit of (EA)

 

(EA) - (EA) I 2

 

high-order bit of (EA) - (tmpcf)

 

(temp) - (temp)-1

 

if COUNT = 1 then

 

if high-order bit of (EA) =1= next-

 

to-high-order bit of (EA)

 

then (OF)-1

 

else (OF) - 0

 

else (OF) undefined

 

Description:

 

RCR destination, count

 

RCR (Rotate through Carry Right) operates exactly like RCL except that the bits are rotated right instead of left.

Encoding:

11101 aav w 1mod 011 rIm 1

if v = 0 then COU NT = 1 else COU NT = (CL)

RCR Operands

Clocks

Transfers Bytes

RCR Coding Example

register, 1

2

-

2

RCR BX, 1

register, CL

8+4/bit

-

2

RCR BL, CL

memory, 1

15(23) + EA

2

2-4

RCR [BXj.STATUS, 1

memory, CL

20(28) + EA + 4/bit

2

2-4

RCR ARRAY [01], CL

*b(w): where b denotes the number of clock cycles for byte operands and w denotes the number of clock cycles for word operands.

\

2-134

Page 169
Image 169
Intel 210200-002 manual Carry Right, RCR destination, count