導航:首頁 > 編程語言 > python數組取反

python數組取反

發布時間:2024-12-15 00:53:23

1. python按位取反9為什麼會得到-10計算步驟是什麼啊

~9的計算步驟:

轉二進制:0 1001

計算補碼:0 1001

按位取反:1 0110

轉為原碼:1 0110

按位取反:1 1001 反碼

末位加一:1 1010 補碼

符號位為1是負數,即-10

規律:~x=-(x+1);

因此,t=~9(1001)並不能輸出6(0110),而是-10;

2. 請問python中為什麼~True等於-2另外除了~還有沒有其他取反操作符

去反是按位去反?那隻有這個符號「~」

True是一個bit,bool型,按位去反會擴展成int型,True的默認值是1即0x0000_0001( 假設int為32位)
所以~True為0xffff_fffe, 也就是-2 ( 補碼-2)

如果不是按位去反的操作可以直接用not, not True

3. python 位操作 取反問題

python 3的整型以16bit遞增。

0xf0 =0b 0000 0000 1111 0000

~0xf0之後得到1111 11110000 1111

[1][111 11110000 1111]

確定是負數,有負數等於絕對值反碼加一。求補碼形式。

絕對值減1得:111 11110000 1110

反碼得:000 0000 1111 0001

得-0xf1即-241(你那的~a[0]得-241)


要求得到[0,256),限定一下范圍即可。

>>>(~a[0])&0xff
15

4. python取反運算

取反運算符原理簡述如下:

以3為例,取反運算過程如下:

1. 將3轉化為4位二進制:3→0011

2. 對二進制結果進行取反操作:0011→1100

3. 對取反結果加1:1100→(~1100+1)→0011+1→0100

4. 對符號進行取反並轉換為十進制:-0100→-4

再以-4為例,取反過程如下:

1. 將4轉化為二進制:4→0100

2. 對二進制結果取反:0100→1011

3. 對取反結果加1再取反:1011→~(1011+1)→~1100→0011

4. 對符號取反並轉換為十進制:+0011→3

從上述結果可以看出,取反運算結果為:原數+1後再取相反數。

閱讀全文

與python數組取反相關的資料

熱點內容
什麼是適合自己的app 瀏覽:451
雲伺服器怎麼補漏洞 瀏覽:176
如何看自己的安卓是什麼等級 瀏覽:633
被丁磊挖走的程序員 瀏覽:19
gsk980ta編程 瀏覽:507
單片機離線 瀏覽:84
解壓助眠敲擊外國長指甲 瀏覽:421
3次元編程 瀏覽:803
夫妻傳送英文命令 瀏覽:316
程序員題代做 瀏覽:950
戴爾伺服器怎麼擴大內存 瀏覽:641
解壓包密碼消失 瀏覽:135
昆侖通態觸摸屏用戶窗加密 瀏覽:564
農信app怎麼看日額 瀏覽:865
iphone備忘錄包含視頻無法加密 瀏覽:283
抖音快手紅包源碼 瀏覽:137
程序員資源分析 瀏覽:586
linux交換分區大小 瀏覽:922
mt怎麼編譯 瀏覽:337
qq郵箱打開pdf 瀏覽:461