![]() КАТЕГОРИИ: Архитектура-(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) |
Команда XOR
Команда OR Команда AND Лекция 10. Система команд процессоров семейства х86 10.1. Команды пересылки данных Прежде чем изменять каким-либо образом данные, необходимо научиться их сохранять: копировать из регистра в память и обратно. Ведь прежде чем оперировать данными в регистрах, их сначала туда надо поместить. Команда MOV, хоть название ее и происходит от слова «move» (перемещать), на самом деле не перемещает, а копирует значение из источника в приемник: MOV приемник,источник Процессоры семейства х86 позволяют использовать в командах только один косвенный аргумент. Следующая команда копирования значения, находящегося по адресу number_one, в область памяти с адресом number_two, недопустима: mov [number_two],[number_one];НЕПРАВИЛЬНО!!! Чтобы скопировать значение из одной области памяти в другую, нужно использовать промежуточный регистр: mov ax,[number_one]; загружаем в АХ 16-битное ; значение "number_one" mov [number_two],ах; а затем копируем его в переменную ; "number_two" Оба операнда команды MOV должны быть одного размера: например, для копирования значения BL в регистр АХ мы должны «расширить диапазон», то есть скопировать весь ВХ в АХ, а затем загрузить 0 в АХ: mov ах,bх; загружаем ВХ в АХ mov ah,0; "сбрасываем" верхнюю часть ; АХ – записываем в нее 0 Можно поступить и наоборот: сначала сбросить весь АХ, а затем загрузить BL в младшую часть АХ (AL): mov ах,0; АН = 0, AL = 0 mov al,bl; заносим в AL значение BL Точно так же можно скопировать 16-битное значение в 32-битный регистр. В официальной документации приведены все допустимые форматы команды MOV: MOV r/m8,reg8 MOV r/m16,regl6 MOV r/m32,reg32 MOV reg8,r/m8 MOV reg16,r/ml6 MOV reg32,r/m32 MOV reg8,imm8 MOV reg16,imml6 MOV reg32,imm32 MOV r/m8,imm8 MOV r/m16,imml6 MOV r/m32,imm32
10.2. Логические команды языка Ассемблера К логическим операциям относятся: логическое умножение (И, AND), логическое сложение (ИЛИ, OR), исключающее ИЛИ (XOR) и отрицание (NOT). Все эти инструкции изменяют регистр признаков. Команда AND выполняет логическое умножение двух операндов: o1 и о2. Результат сохраняется в операнде o1. Типы операндов такие же, как у команды ADD: операнды могут быть 8-, 16- или 32-битными регистрами, адресами памяти или непосредственными значениями. AND o1, o2 Таблица истинности для оператора AND приведена ниже (табл. 8.1). Команда OR выполняет логическое сложение двух операндов: o1 и о2. Результат сохраняется в операнде o1. Типы операндов такие же, как у команды AND. OR o1, o2 Таблица истинности для оператора OR приведена ниже (табл. 8.1). Вычисляет так называемое «исключающее ИЛИ» операндов: o1 и о2. Результат сохраняется в о1. Типы операндов такие же, как у предыдущих инструкций. Формат команды: XOR o1, о2 Таблица истинности для оператора XOR приведена ниже (табл. 8.1). Исключающее ИЛИ обратимо: выражение ((х XOR у) XOR у) снова возвратит х.
Дата добавления: 2014-12-07; Просмотров: 682; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |