Bit вычислительные навыки

  • XOR (^)

Правило Операция: \ (. 1,0 \ RightArrow 1 \) может быть свободно понимать как не носить сумматор

XOR свойства: \ (A \) ^ \ (А = 0 \)

\ (A \) ^ \ (0 = A \)

Пример : Есть несколько двадцать-два, за исключением того, что одна болтовня, не открывают дополнительное пространство, найти номер.

Идея : пусть в массиве всех число исключающих или операций , конечный результат является одно числом.


  • И (&)

Правило Операция: \ (1, 1 \ rightarrow1 \)

Пример ① : ищет число двоичных 1

Идеи :

1. Число и операция должна >> 1, +1 будет справедливо для числа.

2 было проведено с числом -1 числа операции (начиная с нижней задней -1 до 1 между первым всего от 0 до 1, то первое от 1 до 0, так что начальное число и это может быть первым 0), пока это число не равно 0, подсчитать число.

Пример ② : чтобы определить , является ли число является степенью двух.

Идея : пусть это будет целое число 2, то это число является только двоичным 1. ① может быть использовано с примером 2 идеичтобы решить, так что число и значение -1как только операциичтобы определитьявляется ли это 0.


  • Бинарный обмен четности

Идеи : Номер каждого и \ (0xAAAAAA \) (1010 ... 1010 1010 удалены даже немного ) \ (0x555555 \) (0101 ... 0101 0101 с нечетными битами ) для И (&) операции. Тогда даже немного зарезервирован правильные один, зарезервированный нечетные биты оставили одну, то операция XOR (^) операции.


  • число с плавающей точкой составляет от 0-1 (х 2, переместить целое)

Метод : целое число \ (* 2 \) , взятые целыми биты (слева направо расположение), то \ (* 2 \) , вплоть до \ (0 \) .

Например: \ (0.625) \

  1. \ (0,625 * 1,25 = 2 \) , удалить \ (\ 1) , затем двоичное число \ (\ 0.1) , число становится \ \ (0.25)
  2. \ (2 * 0,25 = 0,5 \) , взятые 0, двоичное число будет \ \ (0.10) , число становится \ (0.5 \)
  3. \ (0,5 * 2 = 1 \) , вынимают, и металл становится \ (\ 0,101) , число становится \ (0 \) , конец цикла

  • Там будут появляется число \ (к \) раз, число появляется \ (1 \) штук, и появился \ (1 \) число раз

Советы : \ (K \) \ (K \) двоичное число в двоично не добавление результат операции 0

Методы: С Советами Так что этот вопрос должны быть думать ясно, прежде всего, поставить все цифровое преобразование \ (к \) десятичные друзья, а затем положить каждое число соответствует сумме, а \ (к \ ) , чтобы взять на себя, а затем положить вместе ответ пряный!

рекомендация

отwww.cnblogs.com/JMWan233/p/11145107.html