美文网首页
Day_07-作业

Day_07-作业

作者: 两只小猪呼噜噜_1539 | 来源:发表于2019-01-02 21:01 被阅读0次

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

num = int(input('请输入一个数字:'))
if num & 1 == 1:
    print('%d是一个奇数' % num)
else:
    print('%d不是一个奇数' % num)

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

0x13 == 00010011(原==补)  # 为正
0x19 == 01101000(原==补)  # 为正

3.若x=-20,y=3则x&y的结果是(0 )

-20 == 10010100(原)--> 11101011(反) --> 11101100(补)   # 为负
3 == 00000011(原==补)   # 为正

4.表达式 -97 | 120 的运算结果是(-1)

-97 == 11100001(原)--> 10011110(反) -->10011111(补)  # 为负
120 == 01111000(原 == 补)   # 为正

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

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

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

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

|运算特点:每位上有1就是1,没1就是0

7.常用的位运算使用技巧
1.X & (X - 1) 用于消去X最后的1

# 示例
x = 1100
x - 1 = 1011
x & (x - 1) = 1000

应用:1.检测整数 N 是否是 2 的幂次

# N如果是2的幂次,则N满足两个条件。

# 1.N >0

# 2.N的二进制表示中只有一个1

# 因为N的二进制表示中只有一个1,所以使用N & (N - 1)将N唯一的一个1消去,应该返回0。
n = int(input('请输入一个数字:'))
if n > 0 and n & (n-1) == 0:
    print('%d是2的幂次' % n)
else:
    print('%d不是2的幂次' % n)

2.统计一个整数n的二进制数中出现过多少个1
思路:重复n & n-1的操作,统计个数

相关文章

  • Day_07-作业

    1.使用位运算判断一个数是否是奇数注:奇数的二进制的最后一位是1,偶数是0 2.表达式0x13&0x17的值是( ...

  • Python学习笔记-Day07

    Python学习笔记 Day_07-模块 前面,我们进行的编程都是在python解释器中进行的,如果退出解释器,我...

  • Day_07-进制与位运算

    一、进制 在计算机编程中,整数可以通过十进制、二进制、八进制、十六进制来表示 a.十进制基数:0,1,2,3,4,...

  • 今天先不更

    补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业补作业...

  • 作业作业作业

    出外听课两天,小必的学习没过问。 早晨,小必的数学作业没完成,很多没完成:优化设计,数学书,小灵通,都没完成。 中...

  • 作业作业作业

    头疼的厉害,太阳穴绷得紧紧的。躺了一个多小时了,也不见好转。每当这个时候,一场大觉就能让我彻底放松。可是心不静,怎...

  • 作业作业作业

    1,我的作业 写好了文章,倒也没发的欲望,这是我的作业,作业。 只是想着把一切都准备好,明天再发。听说发文很多O推...

  • 作业作业作业

    @所有人 各位家长:学生对待作业的态度就是对待学习的态度。态度决定一切!老师们在检查作业过程中发现有不写的、有偷工...

  • 11-17

    作业1: 作业2: 作业3: 作业4: 作业5: 作业6: 作业7: 作业8: 作业9: 作业10: 作业11: ...

  • 11月17

    作业1 作业2 作业3 作业4 作业五 作业6 作业7 作业8 作业9 作业10 作业11 思考

网友评论

      本文标题:Day_07-作业

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