دستورالعمل shr فلگ ها را به صورت زیر تنظیم می کند:
• اگر تعداد شیفت صفر باشد فلگ ها تغییری نمی کنند.
• فلگ carry آخرین بیت خارج شده از سمت راست عملوند را نگه می دارد.
• در یک بیت شیفت فلگ overflow یک می شود اگر دو بیت آخرعملوند متفاوت باشند. به عبارت دیگر اگر بعد از عمل شیفت بیت علامت عدد تغییر کند. برای شیفت های بیشتر از یکبار نامعین است.
• فلگ zero، sign و parity با توجه به نتیجه تغییر می کنند.
• فلگ Auxilury Carry نامعین است.
مثال.
mov AX, C1A5h
mov CL,3
shr AX, CL ; shift 3 bit to right, ax = 1834h, CF = 1