1. |
Скопировать элементы исходных векторов из памяти в MMX-регистры
командой movq.
|
2. |
Вычесть элементы второго вектора из элементов первого в арифметике
с насыщением,
рассматривая их как числа без знака. Если разность отрицательна, соответствующий элемент выходного операнда
станет равным нулю; если разность положительна, она попадет в выходной операнд.
|
3. |
Таким же образом вычесть элементы первого вектора из элементов второго.
Там, где в предыдущем случае получились нули, теперь будут
неотрицательные разности.
|
4. |
Вычислить поразрядное логическое ИЛИ
от результатов шагов 2 и 3.
При этом из каждой пары элементов данных на входе ИЛИ
в выходной операнд попадет тот, который не равен нулю.
Это и требовалось.
|