Go语言位运算符|与、或、异或、左移、右移

第一个:& 按位与

运算规则:如果两数对应的二进制位都为 1,那么结果为 1, 否则结果为 0。

第二个:|按位或

运算规则:如果两数对应的二进制位有一个为 1,那么结果为 1, 否则结果为 0。

第三个:^ 按位异或

运算规则:如果两数对应的二进制位不同,那么结果为 1, 否则结果为 0。

第四个:<< 左移

运算规则:左移N位,就是乘以 2 的 N 次方。

第五个:>> 右移

运算规则:右移 N 位,就是除以 2 的 N 次方

举例子:

package main

import (
	"fmt"
)

func main() {
	var a = 15       // 0000 1111
	var b = 7        // 0000 0111
	var c = a & b    // a & b = 0000 0111 = 7
	var d = a | b    // a | b = 0000 1111 = 15
	var e = a ^ b    // a ^ b = 0000 1000 = 8
	var f = 128 << 3 // 128 乘以 2^3 = 1024
	var g = 128 >> 3 // 128 除以 2^3 = 16

	fmt.Println("c = ", c)
	fmt.Println("d = ", d)
	fmt.Println("e = ", e)
	fmt.Println(f)
	fmt.Println(g)
}

就这些。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值