day07-作業(yè)

1.使用位運(yùn)算判斷一個(gè)數(shù)是否是奇數(shù)

n = int(input("請輸入一個(gè)整數(shù):"))

if n & 1 == 1:
    print(n,"為奇數(shù)")
else:
    print(n,"為偶數(shù)")

2.表達(dá)式0x13 & 0x17的值是( )

# 先把十六進(jìn)制轉(zhuǎn)換為二進(jìn)制
0x13 = 000010011(原) = 000010011(反) = 000010011(補(bǔ))
0x17 = 000010111(原) = 000010111(反) = 000010111(補(bǔ))
0x13 & 0x17 = 000010011 & 000010111 = 000010011 = 19

3.若x=-20,y=3則x&y的結(jié)果是( )

# 先把x,y用二進(jìn)制表示
x = -20 = 110100(原) = 101011(反) = 101100(補(bǔ))
y = 3   = 000011(原) = 000011(反) = 000011(補(bǔ)) 
x & y = 101100 & 000011 = 000000(補(bǔ)) = 000000(反) = 000000(原) = 0

4.表達(dá)式 -97 | 120 的運(yùn)算結(jié)果是()

# 先把-97和120用二進(jìn)制表示
-97 = 11100001(原) = 10011110(反) = 10011111(補(bǔ))
120 = 01111000(原) = 01111000(反) = 01111000(補(bǔ))
-97 | 120 = 10011111 | 01111000 = 11111111(補(bǔ)) = 11111110(反) = 10000001 = -1

5.在位運(yùn)算中,操作數(shù)每右移一位,其結(jié)果相當(dāng)于( B )

按位運(yùn)算中,操作數(shù)每右移一位,相當(dāng)于原數(shù)整除2

A.操作數(shù)乘以2 B.操作數(shù)除以2
C.操作數(shù)除以4 D.操作數(shù)乘以4

6.設(shè)x 是一個(gè)整數(shù)(16位).若要通過x|y使x低8位置1,高8位不變,則y的二進(jìn)制數(shù)是( )

因?yàn)檎龜?shù)的原碼、反碼、補(bǔ)碼三碼合一,
因?yàn)? | 0 = 1, 1 | 1 = 1,所以低8位置1,則低8位全為1,
因?yàn)? | 0 = 0, 1 | 0 = 1,所以高8位不變,則高8為全為0,
所以y的二進(jìn)制數(shù)為:00000000 11111111

7.總結(jié)常用的位運(yùn)算使用技巧(自己查自己,覺得好用記得住的)

技巧一:用&來關(guān)閉某位的值

例如:我們想要關(guān)閉a數(shù)中的第4位,而又不影響其它位的現(xiàn)狀,可以用一個(gè)數(shù)0xF7,即二進(jìn)制數(shù)11110111去與a數(shù)作按位“與”運(yùn)算
0x88  10001000  a數(shù)
&
0xF7  11110111  屏蔽數(shù)
     =10000000

技巧二:用|來開啟某位的值

例如:我們想要開啟a數(shù)中的第4位,而又不影響其它位的現(xiàn)狀,可以用一個(gè)數(shù)0xF7,即二進(jìn)制數(shù)00001000去與a數(shù)作按位“或”運(yùn)算
0x80  10000000  a數(shù)
&
0xF7  00001000  開啟數(shù)
     =10001000  

技巧三:用^直接交換兩個(gè)變量的值

如,若有變量a=3,b=4,想要交換它們的值,可以做如下一組操作:
a^=b
b^=a
a^=b

首先,a^=b:
a 00000011
^
b 00000100
  
a=00000111
其次,b^=a:
b 00000100
^
a 00000111  

b=00000011
最后,a^=b:
a 00000111
^
b 00000011  -> 3
a=00000100  -> 4
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 2018年的二十歲好像和以往的每一年都不一樣,越來越喜歡說以前,小時(shí)候,那時(shí),原來在時(shí)間的默認(rèn)中已然把自己當(dāng)成了一...
    曾僧閱讀 157評論 0 0
  • __xxx命名,在類中定義方法/屬性,是真正意義上的私有,需要通過name_mangling方式調(diào)用 _xxx命名...
    蝦想家閱讀 566評論 0 0
  • 情人節(jié)感懷 (一) 紅塵浪漫癡戀纏,共度今宵玉顏歡。 鸞鳳和鳴春夢美,玫瑰獨(dú)俏酒醉酣。 一擲千金何言貴,欲求真愛莫...
    翔遠(yuǎn)閱讀 433評論 0 3
  • 隨著時(shí)間的飛逝,我也一天一天的長大,白皙的皮膚,彎彎的柳葉眉下一雙水汪汪的會(huì)說話的大眼睛,高高的小鼻梁,櫻桃似的小...
    e1ca39a45f6c閱讀 165評論 0 0

友情鏈接更多精彩內(nèi)容