09.09.2004, 10:41
общий
это ответ
Доброе время суток, vlad!
Ну, это очень полезные команды! Например, при помощи сдвигов можно выполнять умножение и деление на числа, равные степени 2, например:
eax * 2 = shl eax, 1
eax * 64 = shl eax, 6
eax / 2 = shr eax, 1
eax / 64 = shr eax, 6
XOR, AND, OR
Применение этих команд неограничено :-)
Например, при помощи XOR можно обнулить регистр: xor eax, eax
При помощи AND и OR - проверить регистр на равенство 0:
and eax, eax ; or eax, eax
jz ZERO
Кроме этого, команда AND используется для сброса нужных битов по маске, а команда OR - для их установки. С помощью XOR нужные биты можно инвертировать.