Главная страница
Предыдущая страница (арифметические команды SSE)

Команды сравнения


1) cmpss приёмник, источник, предикат – сравнение упакованных вещественных чисел. Для каждой из четырёх пар вещественных чисел, находящихся в источнике (rSSE|m128) и приёмнике (rSSE) возвращается либо 0 (если ложь), либо 0FFFFFFFFh (если истина) в зависимости от результата сравнения. Тип сравнения определяется предикатом (число):
0 – приёмник равен источнику 4 – приёмник не равен источнику
1 – приёмник меньше источника 5 – приёмник >= источнику
2 – приёмник <= источнику 6 – приёмник больше источника

2) cmpss приёмник, источник, предикат – сравнение одной пары упакованных чисел. Биты 127—32 приёмника не изменяются

3) comiss приёмник, источник – сравнение одной пары чисел с установкой флагов. Выполняет сравнение нулевых вещественных чисел. Если равны, то ZF=1, CF=0. Если приёмник меньше, то ZF=0, CF=1. Если приёмник больше, то ZF=0, CF=0. После этих команд можно пользоваться командами условного перехода ja, jae, jb, jbe, je, jne. Понятно, что бессмысленно пользоваться теми командами условного перехода, которые в качестве условия для перехода используют какие-либо флаги помимо ZF и CF. Можете не пытаться использовать, например, jg или jl


Следующая страница (команды преобразования типов)