Описание процессора i8086 для программиста

       

IMUL – умножение знаковое


F6 /5

IMUL r/m8

AX:= AL * r/m8

F7 /5

IMUL r/m16

DX, AX:= AX * r/m16

Описание.

Эта команда производит целочисленное умножение двух двоичных чисел со знаком.

Один из множителей располагается в регистре AL или AX (в зависимости от разрядности), второй – в регистре общего назначения или ячейке памяти, что определяется байтом ModRegR/M.

Произведение имеет разрядность, вдвое превышающую разрядность множителей. Оно размещается в регистре AX (8-разрядные множители, 16-разрядный результат) или в регистровой паре DX:AX (16-разрядные множители, 32-разрядный результат, старшая часть в регистре DX, младшая – в AX).

Флажки SF, ZF, AF и PF не изменяются.

Флажки OF и CF устанавливаются, если разрядность результата превышает разрядность исходных операндов. Если результат вмещается в разрядность исходных операндов, эти флажки будут сброшены.



Содержание раздела