Арифметика с одним операндом
Арифметика с одним операндом
Команда отрицания NEG - это оператор смены знака. Она меняет знак
двоичного дополнительного кода операнда=байта или слова. Другие
две команды с одним операндом изменяют значение оперенда на 1.
Команда увеличения INC прибавляет 1 к операнду, а команда
уменьшения DEC вычитает 1 из операнда. С помощью команд увеличения
и уменьшения можно перемещать указатель по массиву ячеек памяти.
Эти команды также могут реализовать счетчик цикла. Каждый проход
по циклу уменьшает счетчик, а когда его значение достигнет 0, цикл
завершается.
Все эти однооперандные команды могут иметь в качестве операнда
как байт, так и слово. Если любая из этих команд указывает ячейку
памяти с помощью одного из косвенных способов адресации, например
[BX+SI], ассемблер нуждается в помощи, так как ему необходимо знать
длину операнда в памяти, чтобы породить правильный код операции.
Команда может использовать модификаторы BYTE PTR или WORD PTR,
чтобы описать операнд.
Эти три команды влияют на регистр состояния точно так же, как
это делают арифметические команды. Прибавление 1, вычитание 1 и
вычитание из 0 идентичны соответственно INC, DEC и NEG; однако
команды с одним операндом более эффективны.