Maxim Integrated DS4830A Optical Microcontroller User Manual
Page 226

DS4830A User’s Guide
226
SR
Shift Accumulator Right
SRA / SRA2 / SRA4
Shift Accumulator Right Arithmetically One, Two, or Four Times
Description:
Shifts the active accumulator right once for the SR, SRA instructions and 2 or 4 times
respectively for the SRA2, SRA4 instructions. The SR instruction shifts a 0 into the
accumulator msb while the SRA, SRA2, and SRA4 instructions effectively shift a copy of the
current msb into the accumulator, thereby preserving any sign orientation. For each shift
iteration, the accumulator lsb is shifted into the Carry (C) flag.
Status Flags:
C, S (changes for SR only), Z
SR Operation:
15
Active Accumulator (Acc) 0 Carry Flag
0
Acc.15
0; Acc.[14:0] Acc.[15:1]; C Acc.0
Encoding:
15
0
1000
1010
1010
1010
Example(s):
; Acc = A345h, C=1, S=1, Z=0
SR
; Acc = 51A2h, C=1, S=0, Z=0
SR
; Acc = 28D1h, C=0, S=0, Z=0
SRA Operation:
15
Active Accumulator (Acc) 0 Carry Flag
Acc.[14:0]
Acc.[15:1]
Acc.15
Acc.15
C
Acc.0
Encoding:
15
0
1000
1010
1111
1010
Example(s):
; Acc = 0003h, C=0, Z=0
SRA
; Acc = 0001h, C=1, Z=0
SRA
; Acc = 0000h, C=1, Z=1