Двоичные цифры: что означает «-0b1»? - PullRequest
0 голосов
/ 11 июня 2019

Я пытаюсь выяснить битовую манипуляцию на фоне следующего кода:

   if cv2.waitKey(1) & 0xFF == ord('q'):
       break

, когда я набираю bin (cv2.waitKey (1)), я получаю '-0b1' каквыход

1 Ответ

2 голосов
/ 11 июня 2019

Это отрицательный двоичный код без представления дополнения 2s. Целые числа Python не ограничены как в других языках. 32-битный отрицательный в дополнении 2s будет 0xFFFFFFFF или 0b11111111111111111111111111111111, но вы не можете написать бесконечное число единиц, поэтому -0b1 является ярлыком.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...