Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Пользователь


Сообщения: 107
Благодарности: 9

Профиль | Цитировать


multiplication of integers modulo 2^16+1 where the subblock is treated as the usual radix-two representation of an integer except that the all-zero subblock is treated as representing 2^16.


Видимо имелось в виду, что ПОСЛЕ умножения и взятия по модулю возвращаемое значение p, если оно равно 2^16, надо перевести в 0 (т.е. в обратную сторону уже).

Теперь работает. Ох уж эти америкосы, так сложно пообширней написать чтобы понятно было.

Код: Выделить весь код
   if (a == 0) a_ = Constants.fuyi; else a_ = a;
    if (b == 0) b_ = Constants.fuyi; else b_ = b;
    p = ((a_ * b_) % (Constants.decip_mod));
    if (p == Constants.fuyi) p = 0;
    return p;
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:42, 21-10-2012 | #3