|
|||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||
|
ROL Циклічне зрушення вліво
Команда rol здійснює зрушення вліво всіх бітів операнда. Якщо команда записана у форматі
зрушення здійснюється на 1 бітій. Старший біт операнда завантажується в його молодший розряд і одночасно заноситися в прапор CF (малий. П6). Якщо команда записана у форматі rol операнд,cl зрушення здійснюється на число бітій, вказане в регістрі-лічильнику CL, при цьому в процесі послідовніх зрушень старші біті операнда переміщаються в його молодші розряді. Останній перенесень біт одночасно заноситися в прапор CF. Малий. П6. Дія команді rol. Як операнд можна указуваті будь-який регістр (окрім сегментного) або елемент пам'яті розміром як в байт, так і у слово. Не допуськається вікорістовуваті як операнд безпосереднє значення. Команда впліває на прапорі OF і CF. Приклад 1 mov Ax,1 rol Ax,1 ;AX=0002h, Cf=0 Приклад 2 mov Dl,8 Oh rol Dl,1 ;DL=01h, Cf=1 Приклад 3 mov Dx,3000h mov Cl,4 rol Dx,cl ;DX=0003h, Cf=1 Приклад 4 mov Dx,2000h mov Cl,4 rol Dx,cl ;DX=0002h, Cf=0
Приклад mov Еах,012345678h rol Eах,16 ;EAX=56781234h
>ROR Циклічне зрушення управо
ror операнд,1 зрушення здійснюється на 1 бітій. Молодший біт операнда запісується в його старший розряд і одночасно поступає в прапор CF (рис.Ш). Якщо команда записана у форматі ror операнд,cl зрушення здійснюється на число бітій, вказане в регістрі-лічильнику CL, при цьому в процесі послідовніх зрушень молодші біті операнда переміщаються в його старші розряді. Останній перенесень біт одночасно заноситися в прапор CF. Малий. П7. Дія команді ror. Як операнд можна указуваті будь-який регістр (окрім сегментного) або елемент пам'яті розміром як в байт, так і у слово. Не допуськається вікорістовуваті як операнд безпосереднє значення. Команда впліває на прапорі OF і CF. Приклад 1 mov Ax,2 ror Ax,1 ;AX=0001h, Cf=0 Приклад 2 mov Dl,81h ror Dl,1 ;DL=C0h, Cf=1 Приклад 3 mov Bx,000eh mov Cl,4 ror Bx,cl ;BX=E000h, Cf=1 Приклад 4 mov Bx,0009h mov Cl,4 ror Bx,cl ;BX=9000h, Cf=1
Приклад mov Edi,90000001h ror Edi,12 ;EDI=00190000h
SAHF Запіс вмісту регістра АН в регістр прапорів
Приклад 1 lahf ;Регистр АН відображає ;стан регістра прапорів or Ан,80h ;Установка бита 7 = SF sahf ;Загрузка АН в регістр ;прапорів, де тепер буде SF = 1 Приклад 2 lahf ;Регистр АН відображає ;стан регістра прапорів and Ан,0bfh ;Сброс бита 6 = ZF sahf ;Загрузка АН в регістр ;прапорів, де тепер буде ZF = 0 Приклад 3 mov АН, 5 sahf ;Устанавливаются прапорі PF і ;CF і ськидається прапорі SF ;ZF і AF
SAL Аріфметічне зрушення вліво
sal операнд, 1 зрушення здійснюється на 1 бітій. У молодший біт операнда завантажується 0. Якщо команда записана у форматі sal операнд,cl зрушення здійснюється на число бітів, вказане в регістрі-лічильнику CL, при цьому в процесі послідовніх зрушень старші біті операнда, пройшовши через прапор CF, втрачаються, а молодші заповнюються нулями (малий. П8.). Малий. П8. Дія команді sal. Як операнд команді
sal можна указуваті будь-який регістр (окрім сегментного) або елемент пам'яті
розміром як в байт, так і у слово. Не допуськається вікорістовуваті як операнд безпосереднє
значення. Приклад 1 mov Al,7 sal Al,1 ;AL= 0Eh=7*2, Cf=0 Приклад 2 mov Ax,ifh mov Cl,8 salAx,cl;AX=lF00h=lFFh*256, Cf=0 Приклад 3 mov Si-1 ;SI=FFFFh mov Cl,4 salsi,cl;SI=FFF0h=-l*16=-16, Cf=1
Приклад mov Ebx,0000c835h sal Ebx,5 ;EBX=001906A0h
SAR Аріфметічне зрушення управо
sar операнд,1 зрушення здійснюється на 1 бітій. Старший біт операнда зберігає своє значення. Якщо команда записана у форматі sar операнд,cl зрушення здійснюється на число бітій, вказане в регістрі-лічильнику CL, при цьому в процесі послідовніх зрушень молодші біті операнда, пройшовши через прапор CF, втрачаються, а старший біт розширюється управо (малий. П9). Малий. П.9. Дія команді sar. Як операнд можна
указуваті будь-який регістр (окрім сегментного) або елемент пам'яті розміром як в байт,
так і у слово. Не допуськається вікорістовуваті як операнд безпосереднє
значення. Приклад 1 mov Al,7 sarAl,1;AL=3=7/2, Cf=1. Залішок ;втраченій Приклад 2 mov Ax,lff0h mov Cl,4 sarAx,cl;AX=01FFh=lFF0h/16, Cf=0 Приклад 3 mov Bx-8 ;BX=FFF8h mov Cl,2 sarbx,cl;BX=FFFEh=-2=-8/4, Cf=0
Приклад mov Eax,0f0001234h sar Eax,8 Eax=fff00012h
|
|
|||||||||||||||||||||||||||||||||||||||||||||
|