2019-01-02进制和位运算作业

2019-01-02  本文已影响0人  白与黑_d83f

1.使用位运算判断一个数是否是奇数

 num=int(input())
 if num & 1 == 1:
     print("%d是奇数"%num)
 else:
     print("%d不是奇数"%num)

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

0x13=19=010011(原码)=010011(补码)
0x17=23=010111(原码)=010111(补码)
运算010011 & 010111 = 010011(补码)= 010011(原码)=19

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

x=-20=110100(原码)=101011(反码)=101100(补码)
3=000011(原码)=000011(补码)
101100&000011=100000(补码)=0

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

-97=11100001(原码)=10011110(反码)=10011111(补码)
120=01111000(原码)=01111000(补码)
10011111|01111000=11111111(补码)=11111110(反码)=10000001(原码)=-1

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

A.操作数乘以2
B.操作数除以2
C.操作数除以4
D.操作数乘以4

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

`

上一篇下一篇

猜你喜欢

热点阅读