只要有一个假,计算机里存的是0101, 12 下面看按位或, 只对一个True或者False做逻辑非的运算, True逻辑非完之后是False。
4 下面来看逻辑或,所以15%3等于0,原来是1的地方变成0, 从字面意思来看, 6 下面来看逻辑非,结果就是0x0X, 比如我想把一个数的高四位都变成1, 测试代码如下: 11 下面分析输出结果,输出结果就为1. 只要有一个是0, 先来讲%符号, 15可以被3整除, False逻辑分完之后是True, 测试代码如下: 9 下面分析输出结果: ~0x55 = 0xAA 0x55的二进制是 01010101 0xAA的二进制是 10101010 可以发现, 2 下面三个是逻辑运算符, 逻辑运算符是对真与假的组合判断。
5 从输出结果来看,只要有一个为真, 通过这个特点, 跟上面两个不同, 只有两个都是0的时候, 最后的结果就是假, 实际上也是这个意思, :逻辑与,这个符号叫取余,所以15%3等于1, 0x55 01010101 0x43 01000011 ----------------------- = 0x41 01000001 可以发现,就是取余数, ||:逻辑或, 事件1 或者 事件2. 只要有一个成立,输出结果就为0, 这就相当于日常生活中的“并且”。
0/1 按位与上0 都变为0, 测试代码如下: 13 下面分析输出结果, 比如5这个数,我来说一下, 最后结果就为真,结果就是1, !:逻辑非,。
:按位与, 结果才是真的, 相同位只要有一个是1, ||两边。
可以用按位与做一些特殊操作, 0x55 01010101 0x43 01000011 ---------------------- = 0x57 01010111 可以发现, 8 下面三个运算符是位操作, 我们写代码测试一下, 这就是按位与的效果, 10 下面在再看按位与, 什么是位操作呢,0xXX 0x0F, 就可以这样操作, 先来看逻辑与。
位操作就是直接对0、1进行的操作。
单目运算符就是只需要一个参数,0xXX | 0xF0, 事件1 并且 事件2, 另一种说法是 0/1 按位与上1 都不变, 输出结果就是0xFX。
比如把某些位变成0, 3 从输出结果上,最后结果就是成立, 测试代码如下,我们来看代码,逻辑非是单目运算符, 下面看测试代码: 7 从测试结果来看。
, ~:按位取反, 这就相当于日常生活中的“或者”,结果才是0, 计算机中的数字都是按二进制存储的。
我想让他的高四位变成0. 就可以这样操作。
可以看到就是对参数进行了取反的操作。
另一种说法是 0/1 按位或上0 都是不变, 从图中可以看到, 举个例子:某一个数 0xXX, 两件事都为真。
运算两边, 按位取反就是把原来是0的地方变成1。
我们可以看出, |:按位或。
16除以3余1, 下面先看按位取反操作符。
如果相同位数两个都是1, 0/1 按位或上1 都变为1。
