![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
s_a_s_h_a |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 261 Регистрация: 20.7.2004 Где: Петрозаводск Репутация: нет Всего: 1 |
на вводе имеется две строки, каждая представляет из себя массив из 16-ти переменных типа BYTE.
Например: 79040301052B0163A103400502060501 и F3A10340FFEC9754A103400502060501. Нужно с использованием sse сложить элементы из первого массива с соответствующими элементами из второго, т.е. 0x79+0xF3, 0x04+0xA1... Посмотрел в сторону intrinsics, но там работа с 4 числами. В общем, буду признателен за кусок кода. |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Угу, режте ваши 16 байтов на 4 куска по 4 и складывайте интринсиками Или возьмите инструкцию PADDB (128 bit) - как раз на ваши 16 байтов Интринсик (у Intel компилятора) - __m128i_mm_add_eip8(__m128i a, __m128i b); |
|||
|
||||
s_a_s_h_a |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 261 Регистрация: 20.7.2004 Где: Петрозаводск Репутация: нет Всего: 1 |
xvr, за _mm_add_epi8 спасибо!
а вот про резать 16 байт на 4 куска и складывать я не понял. |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
4 раза по 32х битному слову
Считаем, что ваша SSE команда _mm_add32 (или как она там называется), а массивы выровнены на 4 байта. int считаем 32 бита |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |