Я хочу использовать '_mm_cmpgt_epi8', чтобы получить значение сравнения.
Всем привет.
Я действовал в следующем порядке.
1. Определите a,b, c следующим образом.
__m128i a = _mm_set_epi8(136,135,134,133,132,131,130,129,128,127,126,125,124,123,122,121); __m128i b = _mm_set1_epi8(125); __m128i c = _mm_setzero_si128();
2. Используйте '_mm_cmpgt_epi8', чтобы получить 'c'.
c = _mm_cmpgt_epi8(a, b);
Поэтому я ожидал такого результата.
255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0
Но я получил такой результат.
0,0,0,0,0,0,0,0,0,255,255,0,0,0,0,0
Итак, я пришел к следующим выводам.
1. Если значение "а" находится в диапазоне от 0 до 127, то выводится нормальное значение сравнения.
2. Если значение 'a' больше 128, то это значение всегда выводится в 0.
Что за проблема?
Я хочу сравнить значение от 0 до 255.
Есть ли решение?
Что я уже пробовал:
Я получил результат, изменив значение " а " с 0 на 255.