11. Арифметические команды.

    Арифметические команды делятся на 2 группы:

  • Двоичной арифметики.
  • Десятиной арифметики.

Все арифметические команды изменяют флаги состояний CF, ZF, SF, AF, OF.



Команды двоичной арифметики:

  • инкремент/декремент (увеличение/уменьшение операнда на 1)
  • INC/DEC регистр/память
  • сложение/вычитание
  • ADD/SUB получатель, источник
  • меняет знак операнда на противоположный.
  • NEG регистр/память
  • сложение/вычитание дополнительно прибавляет/вычитает от результат флаг CF
  • ADC/SBB получатель, источник
  • умножение беззнаковое/умножение знаковое
    MUL/IMULрегистр/память

    В зависимости от типа операнда (байт/слово/дв.слово) множитель по умолчанию берется или al, или ax, или eax и результат записывается соответственно или в ax, или в dx:ax, или в edx:eax.

  • деление беззнаковое/деление знаковое
    DIV/IDIV регистр/память

    В зависимости от типа операнда (байт/слово/дв.слово) делимое по умолчанию берется или ax, или dx:ax, или edx:eax и результат записывается соответственно или в al(целая часть) и ah(остаток), или в ax и dx, или в eax и edx.

17.07.2015