精品熟女碰碰人人a久久,多姿,欧美欧美a v日韩中文字幕,日本福利片秋霞国产午夜,欧美成人禁片在线观看

Python 練習實例55

python 練習實例55

python 編程100例python 編程100例

題目:學習使用按位取反~。

說明:

二進制數在內存中以補碼的形式存儲。

按位取反:二進制每一位取反,0 變 1,1 變 0。

最高位為符號位,正數的符號位為 0,負數為 1。

對正數來說,最高位為 0,其余各位代表數值本身(以二進制表示),如 +42 的補碼為 00101010。

對負數而言,把該數絕對值的補碼按位取反,然后對整個數加 1,即得該數的補碼。如 -42 的補碼為 11010110(00101010 按位取反

11010101+1 即 11010110)。

~9 的計算步驟:

轉二進制:0 1001
計算補碼:0 1001
按位取反:1 0110

轉為原碼:

按位取反:1 1001  
末位加 1:1 1010
符號位為 1 是負數,即 -10

實例:

#!/usr/bin/python
# -*- coding: utf-8 -*-

a = 7
b = ~a

c = -7
d = ~c

print ('變量 a 取反結果為: %d' % b)
print ('變量 c 取反結果為: %d' % d)

以上實例中輸出結果為:

變量 a 取反結果為: -8
變量 c 取反結果為: 6

說明:

  • ~7,對 7 進行取反,7 的補碼是 00000111 對補碼取反得到 11111000,最高位 1 為符號位,表示負數,所以該補碼對應的整數為 -8。

  • ~-7 對 -7 進行取反,-7 的補碼是 11111001 對補碼取反得到 00000110,最高位 0 為符號位,表示正數,所以補碼對應的整數為 6。

python 編程100例python 編程100例

下一節:python 練習實例56

python 編程100例

相關文章