На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
[!] Как относитесь к модерированию на этом форуме? Выскажите свое мнение здесь
Модераторы: Qraizer
Страницы: (3) 1 2 [3]  все  ( Перейти к последнему сообщению )  
> Нужен быстрый алгоритм сравнение строк...
    prefetch это не MMX=это SSE & 3DNow
    и не нужен он совсем
    да кста movd=варварство use movq
      2x ты имел в виду
      movd eax, mm0; ???
      если да, то ню-ню...
      кому то надо подучить асм :)
        это похоже тебе надо его подучить если ты не знаешь что такое movd & movq
          так как я (несколько) пьян отвечу так:
          1. иди лесхозпромзоной (или ещё куды)
          2. если ты сможешь скомпилить movq eax, mm0 я тебе памятник при жизни поставлю
            Я бы для начала сравнил адресочки строк:
            int _strcmp(const char *str1, const char *str2)
            __asm {
            push esi // нужно сохранить
            push edi
            mov esi, str1
            mov edi, str2
            cmp esi, edi
            je _equal // адресок один и тот-же, отбой
            ...
            сравниваем...
            ...
            _equal:
            pop edi
            pop esi
            }
            На эту мысль меня натолкнул такой кусок программы:
            int main() {
            const char String1[] = "Тестируем...";
            ...
            _strcmp(String1, "Тестируем..."); // Здесь мой VC6 запихивает в стек ОДИН И ТОТ-ЖЕ адрес для str1 и str2 !
            ...
            }
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:
            Страницы: (3) 1 2 [3]  все


            Рейтинг@Mail.ru
            [ Script execution time: 0,0848 ]   [ 16 queries used ]   [ Generated: 28.04.24, 01:11 GMT ]