Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Топ:
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Интересное:
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Дисциплины:
2023-01-01 | 33 |
5.00
из
|
Заказать работу |
|
|
Команды сложения и вычитания.
add приемник,источник
Для сложения двух чисел предназначена команда ADD. Она работает как с числами со знаком, так и с числами без знака (это особенность дополнительного кода). Операнды должны иметь одинаковый размер (нельзя складывать 16- и 8-битное значение). Результат помещается на место первого операнда.
inc операнд
Увеличивает значение операнда в памяти или регистре на 1. Команда используется для увеличения значения байта, слова, двойного слова в памяти или регистре на единицу. При этом команда не воздействует на флаг cf.
sub операнд_1,операнд_2
операнд_1=операнд_2-операнд_1
Целочисленное вычитание. Команда sub используется для выполнения вычитания целочисленных операндов или для вычитания младших частей значений многобайтных операндов.
sbb операнд_1,операнд_2
Целочисленное вычитание с учетом результата предыдущего вычитания командами sbb и sub (по состоянию флага переноса cf). Команда sbb используется для выполнения вычитания старших частей значений многобайтных операндов с учетом возможного предыдущего заема при вычитании младших частей значений этих операндов.
dec операнд
Уменьшение значения операнда в памяти или регистре на 1. Команда dec используется для уменьшения значения байта, слова, двойного слова в памяти или регистре на единицу. При этом заметьте то, что команда не воздействует на флаг cf.
Команды умножения и деления.
mul множитель_1
Операция умножения двух целых чисел без учета знака. Команда mul выполняет целочисленное умножение операндов без учета их знаковых разрядов. Для этой операции необходимо наличие двух операндов-сомножителей, размещение одного из которых фиксировано, а другого задается операндом в команде. Контролировать размер результата удобно используя флаги cf и of.
|
imul множитель_1 imul множ_1,множ_2
Операция умножения двух целочисленных двоичных значений со знаком. Команда выполняет целочисленное умножение операндов с учетом их знаковых разрядов. Для выполнения этой операции необходимо наличие двух сомножителей.
div делитель
Выполнение операции деления двух двоичных беззнаковых значений. Команда выполняет целочисленное деление операндов с выдачей результата деления в виде частного и остатка от деления. При выполнении операции деления возможно возникновение исключительной ситуации: 0 — ошибка деления. Эта ситуация возникает в одном из двух случаев: делитель равен 0 или частное слишком велико для его размещения в регистре eax/ax/al.
idiv делитель
Операция деления двух двоичных значений со знаком. Команда выполняет целочисленное деление операндов с учетом их знаковых разрядов. Результатом деления являются частное и остаток от деления. При выполнении операции деления возможно возникновение исключительной ситуации: 0 — ошибка деления. Эта ситуация возникает в одном из двух случаев: делитель равен 0 или частное слишком велико для его размещения в регистре eax/ax/al.
Команды распространения знака.
cbw cwde
Расширение операнда со знаком. cbw — при работе команда использует только регистры al и ax. cwde — при работе команда использует только регистры ax и eax. Данные команды используются для приведения операндов к нужной размерности с учетом знака. Такая необходимость может, в частности, возникнуть при программировании арифметических операций.
cwd
Расширение слова со знаком до размера двойного слова со знаком. Команда cwd используется для расширения значения знакового бита в регистре ax на биты регистра dx. Данную операцию, в частности, можно использовать для подготовки к операции деления, для которой размер делимого должен быть в два раза больше размера делителя, либо для приведения операндов к одной размерности в командах умножения, сложения, вычитания.
|
Команды работы с битами. Логические команды. Операции сдвига.
Команды работы с битами.
bsf результат,источник
Для проверки наличия единичных битов в операнде источник. Команду bsf используют при работе на битном уровне для определения позиции в операнде крайних справа единичных битов.
bsr результат,источник
Проверка наличия единичных битов в операнде источник. Команду bsr используют при работе на битном уровне для определения позиции крайних слева единичных битов.
bt источник,индекс
Извлечение значения заданного бита в флаг cf. Команду bt используют для определения значения конкретного бита в операнде источник.
btr источник,индекс
Извлечение значения заданного бита в флаг cf и изменение его значения на нулевое.
bts источник,индекс
Извлечение значения заданного бита операнда в флаг cf и установка этого бита в единицу.
btc источник,индекс
Извлечение значения заданного бита в флаг cf и изменение его значения в операнде на обратное.
Логические команды.
and приемник,источник
Операция логического умножения для операндов приемник и источник размерностью байт, слово или двойное слово. Команда and используется для логического умножения двух операндов. Результат операции помещается по адресу первого операнда. Эту команду удобно использовать для принудительной установки или сброса определенных битов операнда.
or приемник,маска
Операция логического ИЛИ над битами операнда назначения. Команду or можно использовать для работы с операндами на уровне битов. Типичное использование команды — установка определенных разрядов первого операнда в единицу.
xor приемник,источник
Операция логического исключающего ИЛИ над двумя операндами размерностью байт, слово или двойное слово. Команда xor используется для выполнения операции логического исключающего ИЛИ двух операндов. Результат операции помещается в первый операнд. Эту операцию удобно использовать для инвертирования или сравнения определенных битов операндов.
not источник
Инвертирование всех битов операнда источник. Команду not можно использовать для изменения байта, выполняющего роль некоторого флага, с целью отслеживания некоторых логических условий в программе.
Операции сдвига.
shl операнд,количество_сдвигов
Логический сдвиг операнда влево. Команда shl используется для сдвига разрядов операнда влево.
shr операнд,кол-во_сдвигов
Логический сдвиг операнда вправо. Команда shr используется для логического сдвига разрядов операнда вправо.
sal операнд,количество_сдвигов
Арифметический сдвиг операнда влево.
sar операнд,количество_сдвигов
Арифметический сдвиг операнда вправо.
|
|
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!