Справочник по языку Ассемблера IBM PC



       

SHLD


(SHift Left Double word)

Сдвиг двойного слова влево

 

Схема команды:  shld приемник,источник,количество_сдвигов 

Назначение: логический сдвиг двойного слова влево.


Алгоритм работы:

сдвинуть операнд приемник влево на количество битов, определяемое операндом количество_сдвигов;

одновременно сдвинуть операнд источник влево на количество битов, определяемое операндом количество_сдвигов. Важно заметить, что операнд источник только обеспечивает вдвигаемые в операнд приемник биты, сам он при этом не изменяется;

выдвигаемые во время сдвига влево из операнда источник биты вдвигаются в операнд приемник с его правого края.

Состояние флагов после выполнения команды:

11 07 06 04 02 00
OF SF ZF AF PF CF
? r r ? r

Применение:


Команда shld используется для манипуляции битовыми строками длиной до 64 бит. Эту команду удобно использовать для быстрой вставки (или извлечения) битной строки в большую битную строку; при этом, что очень важно, не разрушается контекст (битное окружение) этих подстрок.

.386 ;извлечь старшую половину eax в bx без разрушения eax         mov     cl,16         shld    ebx,eax,cl         push    bx         shl     ebx,cl         shld    eax,ebx,cl      ;восстановим eax pop bx         

См. также: урок 9 и команды , , , , , , ,




Содержание  Назад  Вперед