|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.07.2011, 03:46 | #1 |
Форумчанин
Регистрация: 08.08.2010
Сообщений: 371
|
Операция циклического сдвига
Здравствуйте. в описании алгоритма шифрования Camellia, есть функция типа:
Код:
Как выполнить эту операцию? Когда стоит << то выполняется shl. А здесь как я понимаю нужно циклически выполнить shl?
Хакинг - не преступление, а способ выживания.
|
07.07.2011, 08:13 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Не знаю есть ли в ЯВУ такая фича, потому я бы под асм переписал:
Код:
I'm learning to live...
|
07.07.2011, 08:34 | #3 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
ну, либо воспользоваться ASM вставкой,
либо банально в выражении сделать логическое ИЛИ в выталкиваемым старшим разрядом. это можно записать так: циклический двоичный сдвиг переменной P: Код:
Код:
ну и, конечно, для LongWord вместо TempL shr (sizeof(TempL)*8-1) можно написать сразу TempL shr 31 ДОБАВЛЕНО АААА! Stilet меня опередил! согласен. на ассемблере это выглядит красиво и наверняка будет эффективно! только в Delphi обрамление чуток другое: Код:
Последний раз редактировалось Serge_Bliznykov; 07.07.2011 в 08:42. |
07.07.2011, 08:51 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Вупс... Это не си?
Мне простительно, я с будуна
I'm learning to live...
|
07.07.2011, 10:51 | #5 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Но, тем не менее, Ваш код в Delphi работает отлично! [OFFTOP] Цитата:
|
||
12.07.2011, 00:44 | #6 |
Форумчанин
Регистрация: 08.08.2010
Сообщений: 371
|
Serge_Bliznykov Спасибо за ответ, меня ещё интересует вот, что. Тот код который на делфи и тот который на асме, выдают разныё результат при одинаковых условиях.
Код:
Хакинг - не преступление, а способ выживания.
|
12.07.2011, 09:14 | #7 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Ghost of Night, шутить изволите?!
Цитата:
при R:=0; получаем 789792 и в первом и во втором случае... |
|
13.07.2011, 00:12 | #8 |
Форумчанин
Регистрация: 08.08.2010
Сообщений: 371
|
Искренне извиняюсь, не обратил внимание. Спасибо.
Хакинг - не преступление, а способ выживания.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
реализация циклического алгоритма С++ | tracer | Помощь студентам | 5 | 12.05.2011 20:15 |
Тело сдвига | Abur | Фриланс | 2 | 08.01.2011 19:11 |
операции сдвига | ssvd | Общие вопросы C/C++ | 2 | 04.11.2009 08:13 |
Шифрование методом сдвига | Paul Hindenburg | Общие вопросы Delphi | 5 | 24.01.2008 08:30 |
Операция сдвига? | SkyDreamer | Общие вопросы C/C++ | 3 | 10.10.2007 08:20 |