xadd назначение, источник – обмен местами и сложение.
Команда позволяет выполнить последовательно два действия:
– обменять значения назначение и источник;
– поместить на место операнда назначение сумму:
назначение = назначение + источник.
neg операнд – отрицание с дополнением до двух.
Команда выполняет инвертирование значения операнд. Физически команда выполняет одно действие:
операнд = 0 – операнд, то есть вычитает операнд из нуля.
Команду neg операнд можно применять:
– для смены знака;
– для выполнения вычитания из константы.
Дело в том, что команды sub и sbb не позволяют вычесть что-либо из константы, так как константа не может служить операндом-приемником в этих операциях. Поэтому данную операцию можно выполнить с помощью двух команд:
neg ax ;смена знака (ax) add ax,340 ; фактически вычитание: (ax)=340-(ax) |