欲将一个16进制的整型变量的高8位清零,而只保留低8位,可用的方法是? 答案是:x&255 ,不知道为什么
2个回答
展开全部
例如
x = 30820
x的十六进制就是7864H
现在y=255
y的十六进制就是00FFH
所以
x&y 得
7 8 6 4
& 0 0 F F
_____________
0 0 6 4
如果这样看不出来,我们可以这样
0111 1000 0110 0100
& 0000 0000 1111 1111
_________________________
0000 0000 0110 0100 -> 0064H
所以高8位清零了,低8位保留了
PS:如不明白的地方,可以追问
x = 30820
x的十六进制就是7864H
现在y=255
y的十六进制就是00FFH
所以
x&y 得
7 8 6 4
& 0 0 F F
_____________
0 0 6 4
如果这样看不出来,我们可以这样
0111 1000 0110 0100
& 0000 0000 1111 1111
_________________________
0000 0000 0110 0100 -> 0064H
所以高8位清零了,低8位保留了
PS:如不明白的地方,可以追问
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询