day3作業(yè):
1.下列四組數(shù),依次為二進制、八進制和十六進制,符合要求的是()
a. 12, 77, 10
b. 12, 80, 10
c. 11, 78, 19
d. 11, 77, 19
分析:
選項a,b中12的2不是二進制基數(shù),選項b中80的8不是八進制基數(shù),
選項c中78的8不是八進制基數(shù)
答案:d
2.二進制數(shù)加法運算的基本特點是“逢二進一”,即0+0=0,0+1=1,1+0=1,1+1=0并進位。運用這一基本法則和十進制運算的類似規(guī)律,得出二進制數(shù)加法運算1001+101的結(jié)果為()
a. 1001
b. 1010
c. 1110
d. 1101
答案: c
7.八進制754中的數(shù)碼7對應(yīng)的位權(quán)是()
a. 10^2 b. 16^1 c. 8^2 d. 2^2
答案:c
8.十進制數(shù)53轉(zhuǎn)換成二進制數(shù)是()
a. 100101
b. 110101
c.100100
d.110100
分析:輾轉(zhuǎn)取余法
答案:110101
9.(偏難)已知,十進制中的8在X進制中表示為11,即(10)8=(X)11。請問這個X進制具體為()進制
a. 6
b. 7
c. 8
d. 9
分析:(X)11 = 1 * x^0 + 1 * x^1 = x+1
8=(X)11=x+1
x=8-1=7
答案:b
10.二進制的1000001相當(dāng)十進制的______,二進制的100.001可以表示為___。
A: ① 62 ② 63 ③ 64 ④ 65
B: ① 2 ^ 3 + 2 ^ –3 ② 2 ^ 2 + 2 ^ –2 ③ 2 ^ 3 + 2 ^ –2 ④ 2 ^ 2 + 2 ^ –3
分析:1000001 = 1 * 2^0 + 1 * 2^6 = 65
答案:A:④ B:④
11.使用位運算判斷一個數(shù)是否是奇數(shù)
注:奇數(shù)的二進制的最后一位是1,偶數(shù)是0
答案:
num = input("請輸入一個數(shù)字: ")
num = int(num)
result = num & 0b1
if result:
print("%s是奇數(shù)" % (num))
else:
print("%s是偶數(shù)" % (num))
12.表達式0x13&0x17的值是( )
分析:
0x13轉(zhuǎn)換為二進制,0x1轉(zhuǎn)換為0001,0x3轉(zhuǎn)換為0011,所以0x13轉(zhuǎn)換為二級制原碼0001 0011
同理,0x17轉(zhuǎn)換為原碼0001 0111
取補碼如下0001 0011
0001 0111
按位與結(jié)果為0001 0011,再轉(zhuǎn)換為原碼
轉(zhuǎn)換為十進制為 19
答案:19
13.若x=2,y=3則x&y的結(jié)果是( )
分析:將x與y從十進制轉(zhuǎn)換為二進制原碼,再轉(zhuǎn)換為補碼,再按位與,得到0010,此為補碼,原碼為0010
答案:2
14.表達式 ord('a') | ord('z') 的運算結(jié)果是()
分析:
ord()返回字符的unicode編碼值得十六進制值
'a'的unicode編碼值為0x0061
'z'的unicode編碼值為0x007A
轉(zhuǎn)換為二進制原碼分別為0000 0000 0110 0001
0000 0000 0111 1010
正數(shù)補碼和原碼相同
按位或結(jié)果為0000 0000 0111 1011
轉(zhuǎn)換為原碼結(jié)果同上
轉(zhuǎn)換為十進制為123
答案:123
15.在位運算中,操作數(shù)每右移一位,其結(jié)果相當(dāng)于( )
A.操作數(shù)乘以2 B.操作數(shù)除以2
C.操作數(shù)除以4 D.操作數(shù)乘以4
答案:B
16.設(shè)x 是一個整數(shù)(16位).若要通過x|y使x低度8位置1,高8位不變,則y的二進制數(shù)是( )
答案:0b0000000011111111