Целочисленное умножение байтов или слов. Инструкция IMUL выполняет умножение со знаком содержимых источника и аккумулятора. Если источник является байтом, в качестве аккумулятора используется регистрAL, а результат двойной длины помещается в регистры AH и AL. Если источник является словом, в качестве аккумулятора используется регистр AX, а результат двойной длины помещается в регистры DX и AX. Если старшая половина результата (содержимое AH для источника-байта или содержимое DX для источника-слова) не является расширением знака младшей половины, флаги CF и OF устанавливаются в 1, в противном случае — в 0. Когда CF и OF установлены в 1, это означает, что AHили DX содержит значимые цифры результата. Состояния флагов AF, PF, SF и ZF после IMUL не определены.
AAM
ASCII-настройка для умножения.
Инструкция AAM корректирует результат предшествующей операции умножения 2-х корректных десятичных распакованных операндов. Корректное десятичное распакованное число, состоящее из 2-х цифр, извлекается из регистровAH и AL, и результат возвращается в регистры AH иAL. Старшие полубайты перемножаемых операндов должны быть обнулены, что необходимоAAM для формирования правильного результата. AAM модифицирует флаги PF, SF и ZF; состояния флагов AF, CF иOF после AAM не определены.