Студопедия

КАТЕГОРИИ:


Архитектура-(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; Просмотров: 597; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.