Графические устройства

         

Очистка сегмента с использованием команды mov



Пример 3.1 . Очистка сегмента с использованием команды mov

хог еах , еах очистка регистра еах
хог di, di di = 0, адрес начала сегмента
mov сх, 16384 сх = 16384, счетчик повторов
Ips : mov es : [di] , еах запись 4-х байтов в сегмент
add di, 04 di = di + 4 , коррекция адреса
loop Ips управление повторами цикла

В примере 3.1 цикл очистки имеет имя ips и состоит из трех команд. Первая из них очищает 4 байта памяти, вторая увеличивает хранящийся в регистре di адрес на 4, а третья повторяет цикл 16 384 раза.

Важнo
Команда loop может передать управление на метку, которая отстоит от нее не далее чем на 128 байтов. Если это условие нарушено, то при компиляции Макроассемблер выдаст сообщение об ошибке.

Для многократного повторения одной строковой операции предназначена команда rep, которую называют префиксом повторения. Так же, как команда loop, она использует счетчик повторов, хранящийся в регистре сх. В примере 3.2 показано применение строковой операции для очистки сегмента.



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