КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
MOVSW Пересылка слова данных из строки в строку
MOVSB Пересылка байта данных из строки в строку MOVS Пересылка данных из строки в строку MOV Пересылка данных LOOP Циклическое выполнение, пока содержимое СХ не равно нулю LEA Загрузка исполнительного адреса Команда LEA загружает в регистр, указанный в команде в качестве первого операнда, относительный адрес второго операнда. В качестве первого операнда следует указывать регистр общего назначения, в качестве второго - ячейку памяти. Команда lea reg,mem по своему результату эквивалентна команде: mov reg,offset mem Команда не воздействует на флаги процессора.
Команда LOOP выполняет декремент содержимого регистра СХ и, если оно не равно нулю, осуществляет переход на указанную метку вперед или назад в том же сегменте команд в диапазоне -128...+127 байт. Содержимое регистра СХ рассматривается как целое число без знака, поэтому максимальное число повторений группы, включенных в цикл команд, составляет 65 536 (если перед входом в цикл СХ=0). Команда не воздействует на флаги процессора.
Команда MOV замещает первый операнд (приемник) вторым (источником). При этом исходное значение первого операнда теряется. В зависимости от описания операндов пересылается слово или байт. Если операнды описаны по-разному или режим адресации не позволяет однозначно определить размер операнда, для уточнения размера передаваемых данных в команду следует включить один из атрибутных операторов byte ptr или word ptr. Команда не воздействует на флаги процессора. В зависимости от использованных режимов адресации команда MOV осуществляет пересылки следующих видов: • из регистра общего назначения в регистр общего назначения; • из ячейки памяти в регистр общего назначения; • из регистра общего назначения в ячейку памяти; • непосредственный операнд в регистр общего назначения; • непосредственный операнд в ячейку памяти; • из регистра общего назначения в сегментные регистры; • из сегментного регистра в регистр общего назначения; • из сегментного регистра в ячейку памяти. Запрещены пересылки из ячейки памяти в ячейку памяти (для этого предусмотрена команда MOVS), а также загрузка сегментного регистра непосредственным значением. Нельзя также непосредственно переслать содержимое одного сегментного регистра в другой.
Команды предназначены для операций над строками (строкой называется последовательность байтов или слов памяти с любым содержимым). Они пересылают по одному элементу строки, который может быть байтом или словом. Первый операнд (приемник) адресуется через ES:DI, второй (источник) - через DS:SI. Операцию пересылки можно условно изобразить следующим образом: (DS:SI) -» (ES:DI) После каждой операции пересылки регистры SI и DI получают положительное (если флаг DF=0) или отрицательное (если флаг DF=l) приращение. Величина приращения составляет 1 или 2 в зависимости от размера пересылаемых элементов. Вариант команды MOVS имеет формат: movs строка_1, строка_2 (что не избавляет от необходимости инициализировать регистры ES:DI и DS:SI адресами строк cmpoKajt и cmpom_2; операнды лишь позволяют ассемблеру определить по описанию полей данных cmpom_l и строка_2 размерность пересылаемых данных - байт или слово). В этом формате возможна замена сегмента второй строки: movs строка_1, ES: строка_2 Рассматриваемые команды могут предваряться префиксом повторения REP (повторять СХ раз). После выполнения рассматриваемых команд регистры SI и D1 указывают на ячейки памяти, находящиеся за теми (если DF=0) или перед теми (если DF=1) элементами строк, на которых закончились операции пересылки. Команды не воздействует на флаги процессора.
Дата добавления: 2015-06-27; Просмотров: 623; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |