远浅
理解他人,内省自己。

位运算的应用

远浅发表于: 2020-06-17 09:05分类: 未分类

位运算指的是计算机对二进制数据的运算行为。

位运算主要存在几个操作符。

  • & 与:当两个位数都为1,结果才为1。

  • | 或:当两个位数都为0,结果才为0。

  • ^ 异或:当两个位数相同为0,相异为1。

  • ~ 取反:0变成1,1变成0。

  • << 左移:各二进制位左移若干位,高位丢弃,低位补0。

  • >> 右移:各二进制右移若干位,无符号数补0。

实际使用场景
权限管理

权限管理可以看做一组二进制的组合,例如 读权限 和 写权限。如果可读可写 当前标识就为 1 。用户具有可读和可写权限,则它的标识为10,十进制表示为 2。用户可读可写表示为二进制 11,十进制为 3。

用户初始权限为 0 0。

使用 | 新增权限,0|10 = 10 新增读权限。10|1 新增写权限。

判断权限时 则用用户权限 & 和 对应权限值 是否等于对应权限值判断是否拥有权限。

快速判断
  • 快速取整: ~~1.1111 = 1
  • 判断奇偶:a&1===0 末位是0 则为偶数
赠人玫瑰, 手有余香。🌹
打赏
发表评论
评论列表
评论努力加载中