美文网首页
强大的位运算符

强大的位运算符

作者: 一个栗 | 来源:发表于2021-06-10 09:32 被阅读0次

位取反运算符

  • 位取反运算符(~)是对所有位的数字进行取反操作


    位取反运算符.png
let number1:UInt8 = 255
let number2 = ~number1
print(number2)

打印结果为:
0

位与运算符

  • 位与运算符(&)可以对两个数的比特位进行合并。它会返回一个新的数,只有当这两个数都是1的时候才能返回1


    位与运算符.png

位或运算符

  • 位或运算符(|)可以对两个比特位进行比较,然后返回一个新的数,只要两个操作位任意一个为1时,那么对应的位数就为1


    位或运算符.png
let number1:UInt8 = 255
let number2 = ~number1
print(number2)

let number3 = number1 & number2
let number4 = number1 | number2
print(number3)
print(number4)

打印结果为:
0
0
255

位异或运算符

  • 位异或运算符,或者说“互斥或”(^)可以对两个数的比特位进行比较,返回一个新的数,当两个操作数对应位不相同时,该数的对应位就为1


    位异或运算符.png
let number1:UInt8 = 255
let number2 = ~number1
let number5 = number1 ^ number2
print(number5)

打印结果为:
255

位左移或右移运算符

  • 位左移运算符(<<) 和位右移运算符(>>)可以把所有位数的数字向左或者向右移动一个确定的位数
  • 位左移和右移具有给整数乘以或者除以2的效果。

无符号整数的移位操作

无符号整数的移位操作.png

有符号整数的移位操作

有符号整数的移位操作.png
正数和负数效果一样
let number6:Int8 = 8
print(number6 << 1)
print(number6 >> 1)
print("======")
let number7:Int8 = -8
print(number7 << 1)
print(number7 >> 1)

打印结果为:
16
4
======
-16
-4

相关文章

  • 强大的位运算符

    位取反运算符 位取反运算符(~)是对所有位的数字进行取反操作位取反运算符.png 位与运算符 位与运算符(&)可以...

  • 开发基础随笔之位运算符(Bitwise Operators)

    位运算符,属于算术运算符 按位逻辑运算符: 位移运算符: 位运算符的运算数只能是整数 位移运算符:按位左移 a<<...

  • 位运算符

    位取反运算符 位取反运算符(~)是对所有位的数字进行取反操作 位与运算符 位与运算符(&)可以对两个数的比特位进行...

  • 位运算符

    位取反运算符 取反翻运算符 ~ 是对所有位的数字进行取反操作0 变 11 变 0 位与运算符 位与运算符 & 可以...

  • 基础运算符

    [使1. 按位与运算符(&](#1. 按位与运算符(&)[按位或运算符 | ](#2. 按位或运算符(|)) 1....

  • python学习第二天 基础知识二

    运算符 +、-、、/、//(整除)、*(幂运算符)、%(取余) 输出结果 位运算符 &位与,|位或,左移<<,右移...

  • 高级运算符(Advanced Operators)

    目录 [toc] 位运算符 1. 按位取反运算符~ 2. 按位与运算符& 3. 按位或运算符| 4. 按位异或运算...

  • swift-位运算符

    1. 位取反运算符( ~ ) 位取反运算符(~ )是对所有位的数字进行取反操作 2. 位与运算符( &) 位与运算...

  • python运算符

    Python算数运算符 Python比较运算符 Python赋值运算符 Python位运算符 按位运算符是把数字看...

  • Python基础之位运算符(含原码反码补码的通俗解释)

    目录 1 二进制 2 原码、反码、补码 3 位运算符 4 位运算符使用技巧 上回学习运算符时,漏了位运算符,因为位...

网友评论

      本文标题:强大的位运算符

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