Андрей Газибаров


без тайни

Инструкциите On-line

SHR
Логическо изместване надясно
Обща форма: SHR dest, counter
Форма КОП CPUID I8086 I80386 I80486
16 32 64 Alt   I8086 I80386 I80486
SHR b, 1 D0 /5 D0 /5 [40+bx] D0 /5 [F0] D8 /5 01   2/23+EA 3/7 3/5
SHR b, ib C0 /5 ib C0 /5 ib [40+bx] C0 /5 ib [F0] D8 /5 ib 186+   3/7 3/5
SHR b, CL D2 /5 D2 /5 [40+bx] D2 /5 [F0] D8 /5 C1   8+4n/28+EA+4n 3/7 3/5
SHR b, rb       [F0] D8 /5 C0+r   8+4n/28+EA+4n 3/7 3/5
SHR w, 1 D1 /5 66 D1 /5 66 [40+bx] D1 /5 [F0] D9 /5 01   2/23+EA 3/7 3/5
SHR w, ib C1 /5 ib 66 C1 /5 ib 66 [40+bx] C1 /5 ib [F0] D9 /5 ib 186+   3/7 3/5
SHR w, CL D3 /5 66 D3 /5 66 [40+bx] D3 /5 [F0] D9 /5 C1   8+4n/28+EA+4n 3/7 3/5
SHR w, rb       [F0] D9 /5 C0+r   8+4n/28+EA+4n 3/7 3/5
SHR d, 1 66 D1 /5 D1 /5 [40+bx] D1 /5 [F0] DA /5 01   2/23+EA 3/7 3/5
SHR d, ib 66 C1 /5 ib C1 /5 ib [40+bx] C1 /5 ib [F0] DA /5 ib 186+   3/7 3/5
SHR d, CL 66 D3 /5 D3 /5 [40+bx] D3 /5 [F0] DA /5 C1   8+4n/28+EA+4n 3/7 3/5
SHR d, rb       [F0] DA /5 C0+r   8+4n/28+EA+4n 3/7 3/5
SHR q, 1     48+bx D1 /5 [F0] DB /5 01   2/23+EA 3/7 3/5
SHR q, ib     48+bx C1 /5 ib [F0] DB /5 ib 186+   3/7 3/5
SHR q, CL     48+bx D3 /5 [F0] DB /5 C1   8+4n/28+EA+4n 3/7 3/5
SHR q, rb       [F0] DB /5 C0+r   8+4n/28+EA+4n 3/7 3/5
  Инструкцията не допуска префикс LOCK, въпреки, че според общата концепция би трябвало.
Действие:
Различия: I80386+ маскира брояча в зависимост от размера на данните (3 бита за байт, 4 бита за дума, 5 бита за двойна дума, 6 бита за четворна дума). Предишните процесори работят с всичките 8 бита. Това може да доведе до разлика в резултатите при различните процесори.
Пример: Резултатът от операция 2h SHR 21h е 1 при I80386+ и 0 при I8086.
Флагове
PE VM NT IOPL OF DF IF TF SF ZF AF PF CF
        А?       A A ? A AF
 
  • CF съдържа последния бит, който е изпаднал (това е булевият смисъл; аритметичният е че CF може да се разглежда като бит с тегловност -1 (стойност ½)).
  • OF е валиден, ако се извърши единично изместване: установява се, ако старшите два бита преди изместването са били различни.
CPU
8086 186 V20 286 386 486 P P-P P-II MMX SSE 3D! E64
• • • • • • • • •       •
  I8086 не изпълнява формата с непосредствен операнд (КОП C0 и C1).
ИзключенияОБЩИ
 
Съдържание Пълен текст
 
  PDF, 3.6M Приложение, 18К