美文网首页
运算符 - 位运运算(最接近计算机底层的)

运算符 - 位运运算(最接近计算机底层的)

作者: sexyhair | 来源:发表于2019-03-07 19:53 被阅读0次
6.2.5 位运运算(最接近计算机底层的)
位与运算(&)
位或运算(|)
位异或运算(^)
位反码(~)
<<(左移)
>>(右移)
>>>(无符号右移)

位与运算(&)

有0则0(与逻辑运算符中&很像呀,有false则false)


位与(&)运算的过程

位或运算(|)

有1则1(与逻辑运算符中|很像呀,有true则true)


位或(|)运算过程

位异或运算(^)

相同为0,不同为1(与逻辑运算符中^很像呀,相同为false,不同为true)

位异或(^)运算过程
特点:一个数据对另一个数据位异或(^)两次,则值是此该数本身;

位反码(~)

非0则1,非1则0(与逻辑运算符中!很像呀,非false则true,非true则false)

位反码(~)运算过程
<<(左移)

左移n位,空位补0,高位移除

左移的运算过程

(左移的结果 = 左移的数据x2的移位数次幂)即12=3*2(二进制)^2

>>(右移)

规则:左移n位,二进制的高位是0,则空缺位补0,二进制的高位是1则空缺位补1

右移的运算过程

(右移的结果 = 右移的数据/2的移位数次幂)即0=3/2(二进制)^2


负数的右移运算过程
>>>(无符号右移)

规则:右移n位,空缺位总是补0

无符号右移的运算过程

位运运算练习:

(1)请实现2个整数变量的交换?

(2)请写出最有效的2*8的结果?

其实就是28的底层写法:8 = 2的3次幂,即2左移3个位置,22^3

相关文章

  • 运算符 - 位运运算(最接近计算机底层的)

    6.2.5 位运运算(最接近计算机底层的) 位与运算(&) 有0则0(与逻辑运算符中&很像呀,有false则fal...

  • 技术问 - 运算符有哪些

    算术运算符 赋值运算符 比较运算符 逻辑运算符 位运运算 三目运算符 算术运算符 赋值运算符 比较运算符(关系运算...

  • python运算符

    python里面的运算符分为以下几类:算术运算符、逻辑运算符、赋值运算符、比较运算符、位运算符、成员运算符、身份运...

  • 理解C语言位运算符

    位运算符 位运算符包括:& 、|、^、~、<<、>> 分析 & 按位与操作,按二进制位进行"与"运算。| 按位或运...

  • 重拾Java(2)-运算符

    Java提供了丰富的运算符,可以将之分为四种:算术运算符、位运算符、关系运算符、逻辑运算符 一、算术运算符 算术运...

  • 2018-12-26

    day3 运算符 python支持运算符: a .数学运算符 b.比较运算符 c.逻辑运算符 d.赋值运符 e.位...

  • 运算符

    在C语言中的运算符和我们平时用的基本上都差不多。运算符包括赋值运算符、算术运算符、逻辑运算符、位逻辑运算符、位移运...

  • C-运算符

    运算符是一种告诉编译器执行特定的数学或逻辑操作的符号,分为: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运...

  • 编程语⾔⾯试题之新版javase基础语法篇之运算符

    简介:⾯试中 短路运算符 和 位运算考点:计算机基础运算知识 难度【** *】 你知道 运算符 &和&&、|和||...

  • 运算符的优先级

    PHP算数运算符的优先级: 递增/递减> ! > 算数运算符 > 大小比较 > (不)相等比较 > 引用 > 位运...

网友评论

      本文标题:运算符 - 位运运算(最接近计算机底层的)

      本文链接:https://www.haomeiwen.com/subject/hpbhpqtx.html