位运算 &(按位与) |(按位或) ^(按位异或)
位运算的数都以补码的方式参与运算。
1) 按位与“&”只有对应的两个二进位均为1时,结果位才为1 ,否则为0
2) 按位或 “|”只要对应的二个二进位有一个为1时,结果位就为1
3) 按位异或 "^" 当两对应的二进位相异时,结果为1
一. 求
short x = -99
short y = 0xFF
x & y 得结果?
解:
x 的原码是:1000 0000 0110 0011 说明:其中符号位"1"表示为负数
x 的反码是:1111 1111 1001 1100 说明 : 符号位"1"没有发生变化
x 的补码是:1111 1111 1001 1101
说明 : 补码是在反码的基础上加1
y = 0xFF ,它的十进制值是255
y的原码是 : 0000 0000 1111 1111
y的反码是 : 0000 0000 1111 1111
y的补码是 : 0000 0000 1111 1111
1111 1111 1001 1101
0000 0000 1111 1111
&
--------------------------------
0000 0000 1001 1101 ====> 结果即等于157
二. 求
short x = -300
short y = 0xFF
x & y 得结果?
解:
x 的补码是:1111 1110 1101 0100
y 的补码是 : 0000 0000 1111 1111
1111 1110 1101 0100
0000 0000 1111 1111
&
--------------------------------
0000 0000 1101 0100 ====> 结果即等于212
本文详细解释了位运算的基本概念,包括按位与、按位或和按位异或,并通过具体实例展示了如何进行位运算操作。文章还介绍了如何使用补码表示负数,并在实例中应用了补码进行位运算。
3768

被折叠的 条评论
为什么被折叠?



