Исключающее ИЛИ (А - 4) = 5
Двоичное представление 5 равно 101, поэтому мы знаем, что A и A - 4 имеют одинаковые битовые значения, за исключением первого и третьего (справа налево). Поскольку четвертая цифра не изменилась (иначе число было бы больше или равно 8), поэтому третий бит A был равен 1, но самая важная подсказка заключается в том, что 5 нечетно, и мы выполняем XOR A с A - 4. Мы знаем, что значение последнего бита числа определяет, является ли оно парным или нечетным, и мы знаем, что вычитание или добавление парного числа к целому числу оставит его нечетным, если оно было нечетным, и оставит его парным, если оно было парным, Таким образом, A - 4 будет нечетным, если A было нечетным, и будет парным, если A было парным. Побитовое исключающее ИЛИ пары чисел с другим парным числом или нечетного числа с другим нечетным числом приведет к парному числу. Таким образом, XOR (A - 4) = 5 не имеет решения для целых чисел без знака, если для них выделено бесконечное пространство памяти.
Вот как вы можете решить это в уме. Конечно, для каждого типа уравнения можно было бы дать более подробное объяснение, но решение любого типа уравнения, включающего побитовые операции, представляет собой полное поле, выходящее за границы ответа SO. Если вы хотите запрограммировать это, то у вас будет сложный проект для реализации, но всегда начинайте с самого простого, очевидного.
person
Lajos Arpad
schedule
08.01.2018