美文网首页
2018-09-27 Day 03 进制与字符串作业(答案解析在

2018-09-27 Day 03 进制与字符串作业(答案解析在

作者: EryangZ | 来源:发表于2018-09-27 22:06 被阅读0次

    题目

    1.下列四组数,依次为二进制、八进制和十六进制,符合要求的是()
    a. 12, 77, 10
    b. 12, 80, 10
    c. 11, 78, 19
    d. 11, 77, 19

    2.二进制数加法运算的基本特点是“逢二进一”,即0+0=0,0+1=1,1+0=1,1+1=0并进位。运用这一基本法则和十进制运算的
    类似规律,得出二进制数加法运算1001+101的结果为()
    a. 1001
    b. 1010
    c. 1110
    d. 1101

    3.八进制754中的数码7对应的位权是()
    a. 10^2 b. 16^1 c. 8^2 d. 2^2

    4.十进制数53转换成二进制数是()
    a. 100101
    b. 110101
    c. 100100
    d. 110100

    5.(偏难)已知,十进制中的8在X进制中表示为11,即(10)8=(X)11。请问这个X进制具体为()进制
    a. 6
    b. 7
    c. 8
    d. 9

    6.二进制的1000001相当十进制的______,二进制的100.001可以表示为______ 。
    A: ① 62 ② 63 ③ 64 ④ 65
    B: ① 23+2–3 ② 22+2–2 ③ 23+2–2 ④ 22+2–3

    7.使用位运算判断一个数是否是奇数
    注:奇数的二进制的最后一位是1,偶数是0

    8.表达式0x13&0x17的值是( )

    9.若x=2,y=3则x&y的结果是( )

    10.表达式 ord('a') | ord('z') 的运算结果是()

    11.在位运算中,操作数每右移一位,其结果相当于( )

    A.操作数乘以2 B.操作数除以2

    C.操作数除以4 D.操作数乘以4

    12.设x 是一个整数(16位).若要通过x|y使x低度8位置1,高8位不变,则y的二进制数是______

    答案

    1. 答案为D;答案A选项中12不是二进制 ,答案B中80不为八进制,答案D中78不为不进制

    2. 答案为C;

    3. 答案为C;八进制中753中数7所对应的位权为8^2, 意思是数需要增多64,753才会变为853,同理5所在的位权为8^1,数增加8,753就变为763

    4. 答案为B;倒除法,余数倒写

                   余数
    53 / 2 = 26    1
    26 / 2 = 13    0
    13 / 2 = 6     1
    6 / 2 = 3      0
    3 / 2 = 1      1
    1 / 2 = 0      1
    
    1. 答案为B;1 * X^0 + 1 * X^1 = 8 得出X = 7

    2. ④65,④2^2 + 2^(-3) ;
      1000001 = 1 * 2^0 + 0 * 2^1 +…… + 1 * 2^6 = 1 + 64 = 65
      100.001 = 1 * 2^(-3) + 0 * 2^(-2) + 0 * 2^(-1) + 0 * 2^(0) + 0 * 2^(1) + 1 * 2^(2) =2^2 + 2^(-3)

    3. 这里用位运算符的特性来做,下面只列举两种

    按位与&判断
    a = int(input("请输入一个整数:"))
    b = bool(a & 1)
    print("%s是不是奇数呢?" % a, b)
    
    按位或|判断
    b = bool((a%2) & 0)
    print("%s是不是奇数呢?" % a, b)
    
    
    1. 答案为19;
    0x13 = 00010011
    0x17 = 00010111
    (0b)19 =00010011
    
    1. 答案为2;
    (0b)2 = 10
    (0b)3 = 11
    相加 = 10
    
    1. 答案为123;
    ord("a") = 97
    ord("z") = 122
    (0b)97 = 1100001
    (0b)122 = 1111010
    result = 1111011 = 1 * 2^0 + 1 * 2^1 + 0 * 2^2 + 1 * 2^3 + 1 * 2^4 + 
    1 * 2^5 + 1 * 2^ 6 = 1 + 2 + 8 + 16 + 32 + 64 = 123
    
    1. 答案为B;

    2. 答案为0b0000000011111111

        高八位       低八位
    x = 0bxxxxxxxx xxxxxxxx  
    x2 = 0bxxxxxxxx 11111111
    y = 0b00000000 11111111
    使x低八位全为1,y的低八位就全为1,x高八位不变,y的高八位就都为0
    

    相关文章

      网友评论

          本文标题:2018-09-27 Day 03 进制与字符串作业(答案解析在

          本文链接:https://www.haomeiwen.com/subject/njbyoftx.html