я не видел упомянутого, этот пример покажет вам десятичную операцию (-) для 2-битных значений: A-B (только если A содержит B)
эта операция необходима, когда в нашей программе содержится глагол, представляющий биты. иногда нам нужно добавить биты (как выше), а иногда нам нужно удалить биты (если глагол содержит затем)
111 #decimal 7
-
100 #decimal 4
--------------
011 #decimal 3
с питоном:
7 & ~ 4 = 3 (убрать из 7 битов, которые представляют 4)
001 #decimal 1
-
100 #decimal 4
--------------
001 #decimal 1
с питоном:
1 & ~ 4 = 1 (убрать из 1 биты, которые представляют 4 - в этом случае 1 не «содержит» 4) ..