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

       

LODS/LODSB/LODSW/LODSD


(LOad String Byte/Word/Double word operands)

Загрузка строки байтов/слов/двойных слов

 

Схема команды:  lods источник 
lodsb 
lodsw 
lodsd

Назначение: загрузка элемента из последовательности (цепочки) в регистр-аккумулятор al/ax/eax.


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

загрузить элемент из ячейки памяти, адресуемой парой ds:esi/si, в регистр al/ax/eax. Размер элемента определяется неявно (для команды lods) или явно в соответствии с применяемой командой (для команд lodsb, lodsw, lodsd);

изменить значение регистра si на величину, равную длине элемента цепочки. Знак этой величины зависит от состояния флага df:

df=0 — значение положительное, то есть просмотр от начала цепочки к ее концу;



df=1 — значение отрицательное, то есть просмотр от конца цепочки к ее началу.

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

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

Применение:


Команды извлекают элемент из ячейки памяти в один из регистров. Перед командой lods можно указать префикс повторения rep, но в этом нет особого смысла, так как обычно эту команду используют в некотором цикле для просмотра некоторой цепочки с элементами фиксированного размера.

str     db      ... ...         cld         lea     si,str         lodsb   ;загрузить первый байт из str в al         

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



Содержание раздела