Предположим, что a = a31 a30 . . . a1 a0
- это 32-битное двоичное слово.
Рассмотрим 32-разрядное двоичное слово b = b31 b30 . . . b1 b0
вычисленного по следующему алгоритму:Теория чисел: требуется решение
- отсканировать справа налево и не копировать его биты в
b
до первого1
найден (который также копируется вb
) - После этого скопируйте булевские отрицания бит в
a
.
Например, a = 10100 . . . 00
преобразуется в b = 01100 . . . 00
. Объясните, что вычисляет этот алгоритм, если a
и b
интерпретируются как двоичные числа.
Этот вопрос, как представляется, не по теме, потому что это домашнее задание свалка. – tmyklebu