1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

Проектирование хэш-функции

Тема в разделе "WASM.A&O", создана пользователем Dr.Golova, 26 июн 2006.

  1. Dr.Golova

    Dr.Golova New Member

    Публикаций:
    0
    Регистрация:
    7 сен 2002
    Сообщения:
    348
    Где бы почитать мат.часть про сабж.

    Интересуют не криптографические хэши (для поиска). Конкретно нужны функции транформирующая 32 бита в 14/15 бит.

    Причем чем младше бит в исходных 32 битах, там он более важен, т.е. ключи в больше вероятностью сгруппированы кучками, а не разбросаны по всему диапазону. Т.е. линейное распреденение результатов функции это не самый оптимальный вариант.
     
  2. Chingachguk

    Chingachguk New Member

    Публикаций:
    0
    Регистрация:
    2 сен 2002
    Сообщения:
    343
    Если для быстрого доступа. Я использовал CRC16 нормированное на число параметров. Т.е. я решал задачу построения функи быстрого доступа к параметрам *.INI - файлофф (набора). Оптимизация запроса вида:



    ~ReadProfileString(char *File, char *Sec, char *Param...)



    Вначале строящий индексы код вычисляет общее число параметров, затем для каждого параметра получает:



    CRC'=CRC16(File+Sec+Param) % TotalParamsNumber;



    Если коллизия, то там будет ссылка на следующий элемент (с таким же нормированным CRC).