在vb里为什么?5 and -7结果为1

来源:百度知道 编辑:UC知道 时间:2024/05/17 20:47:24
还有?5 and -10结果为4;?-5 and -7 结果为-7它们有什么规律吗?

当and在两个数字中间时,and运算符就不是逻辑与运算符而是按位与运算符了,所以5 and -7 换成二进制就是 0000000000000101(2) and 1111111111111001(2) 按位做与运算得0000000000000001(2)=1(10),
5 and -10 就是 0000000000000101(2) and 0000000000000110(2) 按位做与运算得 0000000000000100(2)=4(10),-5 and -7 就是1111111111111011(2) 和 1111111111111001(2) 按位与,得1111111111111001(2)=-7(10)