4^255 + 2^255 - 255 = (2^2)^255 + 2^255 - 256 + 1 = 2^510 + 2^255 - 2^8 + 1 В двоичном представлении 2^510 - единица и 510 нулей, 2^255 - единица и 255 нулей, 2^8 - единица и 8 нулей, 1 - 1 Нужно понять, как записывается 2^255 - 2^8, для этого можно применить /алгоритм вычитания в столбик/ в двоичной системе счисления: Разряды 0..7 в обоих числах = 0 -> в результате вычитания в этих разрядах останется 0 Далее в числе 2^255 в разрядах 8..254 стоят нули, и из 8-ого разряда вычитается 1. При вычитании из нуля единицы получается единица с вычитанием единицы из следующего разряда (этот процесс продолжается до первого ненулевого разряда - до 255ого). Т.е. все разряды с 8ого по 254ый (всего их 254-8+1 = 247) в разности = 1, а в 255ом получается 0. --> 2^255 - 2^8 записывается как 247 единиц и 8 нулей. При прибавлении 2^510 и 1, просто получаем еще две единицы в разрядах 0 и 510. Всего 249 единиц в двоичной записи.
Тебе нужно привести всё к двойке. 4 это 2 в квадрате, значит 2 в 510 + 2 в 255 - 2 в 8 (это будет 256, берем больше чтобы заполнить всё число, а теперь вычитаем то, что нам не надо) 2 в нулевой (будет 1, т.е 256-1=255) 2 в 510 + 2 в 255 - 2 в 8 +2 в 0
бывает так, что наши "квадраты" стоят не в порядке убывания, тогда расставляем их в порядке убывания. например если бы было 255 +510 -8 мы бы сделали 510+255-8
ну а теперь считаем единицы: первая цифра всегда считается как единица, минус мы считаем 255 - 8 = 247 единиц и одна единица в конце 2в 0 итого получаем первое число всегда единица 1 + минус получился 247 + единица в конце +1 = 249
В двоичном представлении 2^510 - единица и 510 нулей, 2^255 - единица и 255 нулей, 2^8 - единица и 8 нулей, 1 - 1
Нужно понять, как записывается 2^255 - 2^8, для этого можно применить /алгоритм вычитания в столбик/ в двоичной системе счисления:
Разряды 0..7 в обоих числах = 0 -> в результате вычитания в этих разрядах останется 0
Далее в числе 2^255 в разрядах 8..254 стоят нули, и из 8-ого разряда вычитается 1. При вычитании из нуля единицы получается единица с вычитанием единицы из следующего разряда (этот процесс продолжается до первого ненулевого разряда - до 255ого). Т.е. все разряды с 8ого по 254ый (всего их 254-8+1 = 247) в разности = 1, а в 255ом получается 0.
--> 2^255 - 2^8 записывается как 247 единиц и 8 нулей.
При прибавлении 2^510 и 1, просто получаем еще две единицы в разрядах 0 и 510.
Всего 249 единиц в двоичной записи.
4 это 2 в квадрате, значит 2 в 510 + 2 в 255 - 2 в 8 (это будет 256, берем больше чтобы заполнить всё число, а теперь вычитаем то, что нам не надо) 2 в нулевой (будет 1, т.е 256-1=255)
2 в 510 + 2 в 255 - 2 в 8 +2 в 0
бывает так, что наши "квадраты" стоят не в порядке убывания, тогда расставляем их в порядке убывания. например если бы было 255 +510 -8 мы бы сделали 510+255-8
ну а теперь считаем единицы: первая цифра всегда считается как единица, минус мы считаем
255 - 8 = 247 единиц
и одна единица в конце 2в 0
итого получаем первое число всегда единица 1 +
минус получился 247 +
единица в конце +1 = 249