Мои входные данные - 16-битные данные, и мне нужно найти медиану из 3 значений, используя набор инструкций SSE2.
Если у меня есть 3 16-битных входных значения A, B и C, я подумалчтобы сделать это так:
D = max( max( A, B ), C )
E = min( min( A, B ), C )
median = A + B + C - D - E
C функции, которые я планирую использовать:
- max - _mm_max_epi16
- min - _mm_min_epi16
- сложение - _mm_add_epi16
- вычитание - _mm_sub_epi16
Кто-нибудь может предложить лучший способ?