Python中有個按位取反運算符:,但這個運算符並不是真正的按位取反,而是效果相當於原值乘以負一再減一,如:6 = -7.
具體原來請大家參考《Python的按位取反運算符~的簡單解析》。
如果要對相關數據進行按位取反,但符號位保持不變,則應該這樣處理:
如果x小於0:x按位取反 = -abs(x) & 0b111…11)
如果x大於等於0:x按位取反 =(x & 0b111…11)
后面的0b表示二進制,1的個數需要看x的位數確認,如是256位二進制,可以使用0xff。
Python中有個按位取反運算符:,但這個運算符並不是真正的按位取反,而是效果相當於原值乘以負一再減一,如:6 = -7.
具體原來請大家參考《Python的按位取反運算符~的簡單解析》。
如果要對相關數據進行按位取反,但符號位保持不變,則應該這樣處理:
如果x小於0:x按位取反 = -abs(x) & 0b111…11)
如果x大於等於0:x按位取反 =(x & 0b111…11)
后面的0b表示二進制,1的個數需要看x的位數確認,如是256位二進制,可以使用0xff。
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。