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的二进制数是( )
`