取反运算是什么意思?

取反运算是什么意思?,第1张

比如说byte类型的5,在内存中是00000101,按位取反后就是11111010

当你再次输出这个数时就变成了250

按位取反就是1变0,0变1

首先你要知道现在我们用的多数都是32位机,所以整形数都是4个字节

那么再看看按位取反的结果:

00000000 00000000 00000000 00000101 这是5

00000000 00000000 00000000 00000000 这是0

11111111 11111111 11111111 11111111 这是-1

11111111 11111111 11111111 11111110 这是-2

11111111 11111111 11111111 11111101 这是-3

11111111 11111111 11111111 11111100 这是-4

11111111 11111111 11111111 11111011 这是-5

11111111 11111111 11111111 11111010 这是5取反的结果-6

运算符"!"是逻辑非运算符;"~"才是按位取反运算符。

经过"!"运算后,运算结果只有0或1;而经过"~"运算后,结果有多种,取决于 *** 作数。

下面通过实例来介绍这个运算符的使用方法:

int a=10, b, c

b = !a   // 运算后b=0,因为a不等于0(即为真),所以取非后等于0(为假)

c = ~a   // 运算后c=5,因为a的二进制位1010,按位取反后变为0101(即等于5)


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5794716.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-01-31
下一篇 2023-01-31

发表评论

登录后才能评论

评论列表(0条)

保存