Команда сравнения cmp имеет интересный принцип работы. Он абсолютно такой же, как и у команды вычитания.
sub операнд_1,операнд_2. Команда cmp так же, как и команда sub, выполняет вычитание операндов и устанавливает флаги. Единственное, чего она не делает — это запись результата вычитания на место первого операнда.
Синтаксис команды cmp:
cmp операнд_1,операнд_2 (compare) — сравнивает два операнда и по результатам сравнения устанавливает флаги.
Флаги, устанавливаемые командой cmp, можно анализировать специальными командами условного перехода. Прежде чем мы их рассмотрим, уделим немного внимания мнемонике этих команд условного перехода (табл. 1). Понимание обозначений при формировании названия команд условного перехода (элемент в названии команды jcc, обозначенный нами cc) облегчит их запоминание и дальнейшее практическое использование.
Таблица 1. Значение аббревиатур в названии команды jcc
Мнемоническое обозначение
| Английский
| Русский
| Тип операндов
|
E e
| equal
| Равно
| Любые
|
N n
| not
| Не
| Любые
|
G g
| greater
| Больше
| Числа со знаком
|
L l
| less
| Меньше
| Числа со знаком
|
A a
| above
| Выше, в смысле “больше”
| Числа без знака
|
B b
| below
| Ниже, в смысле “меньше”
| Числа без знака
|