Типы многоядерных вычислительных систем
REPE (REPeat string operation while E
Download 475.5 Kb.
|
Методичка лр №4
- Bu sahifa navigatsiya:
- POP (POP
REPE (REPeat string operation while Equal) CMPSB (CoMРare String Byte) сравнение строк и поиск первого несовпадения.
REPE CMPSB (операнды не указываются) Действие: повторение сравнения двух однобайтовых элементов строк с логическими адресами DS:ESI и ES:EDI. По результату сравнения устанавливаются флаги: OF, SF, ZF, AF, PF, CF. Выход из цикла сравнения происходит при ECX=0 или нахождении в строках первого несовпадения (флаг ZF=0). После каждого сравнения (независимо от результата) происходит увеличение (при сброшенном флаге EFLAGS.DF=0) или уменьшение (при установленном флаге EFLAGS.DF=1) значений регистров ESI и EDI. Алгоритм выполнения команды в АЛУ Сравнение байта источника DS:ESI с байтом приемника ES:EDI методом вычитания. По результату сравнения устанавливаются флаги, например, если байты равны (EFLAGS.ZF=1, EFLAGS.СF=0), иначе (EFLAGS.ZF=0, EFLAGS.СF=1). Переход к просмотру следующего элемента строки. Если флаг направления просмотра EFLAGS.DF=0, то увеличить значения индексных регистров на длину элемента строки – 1байт (ESI=ESI+1 и EDI=EDI+1), Иначе (DF=1) уменьшить значения индексных регистров (ESI=ESI–1 и EDI=EDI–1), Проверка условий повторения просмотра строк: (EFLAGS.ZF=1 и ECX≠0)? Если сравниваемые байты равны (ZF=1) и счётчик повторений ECX≠0, то уменьшить на 1 счётчик повторений (ECX=ECX-1), переход к п.1. Конец выполнения команды. Исключения: #GP, #PF. POP (POP a value from the stack) – извлечение из стека двойного слова и помещение его по адресу операнда. POP операнд (POP ЕВХ) Действие: операнд[31÷0]=ОП[SS:ESP] Извлечение двойного слова в операнд из вершины стека (SS:ESP). Операнд: 32-разрядный регистр или ячейка памяти. Выполнение команды не влияет на флаги. Алгоритм выполнения команды. Формирование физического адреса вершины стека (SS:ESP). Копирование двойного слова из вершины стека по адресу операнда. Формирование адреса новой вершины стека (ESP=ESP+4). Исключения: #GP, #PF. Download 475.5 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling