美文网首页前端从业人员技术贴
快速理解位运算符和二进制数

快速理解位运算符和二进制数

作者: 贝程学院_前端 | 来源:发表于2019-06-27 16:24 被阅读326次

二进制转十进制,十进制转二进制,位运算符 | 和 &

先看个例子
位运算符: | 是将两边数字转为二进制做位对比,两个位只要有一个为1,那么结果都为1。否则就为0
67|33
67//转为二进制为1000011
33//转为二进制为100001
//对比结果就是:
1000011 | 0100001  
按照运算符的运算方式:1和0对比 = 1,0和1对比 = 1,0和0对比=0,0和0对比=0,0和0对比=0,1和0对比=1,1和1对比 = 1
结果就是1100011 然后转为普通十进制 结果就是99
此处会有同学有疑问为什么33的二进制多了个0
67的二进制比33的二进制多了一位,简单点理解就是自动在33的前面补一个0

位运算符:& 两个数值的个位分别相与,同时为1才得1,只要一个为0就为0。
67&33
67//转为二进制为1000011
33//转为二进制为100001
//对比结果就是:
1000011 | 0100001  
按照运算符的运算方式:1和0 = 0,0和1 = 0,0和0 = 0,0和0 = 0,0和0 = 0,1和0 = 0,1和1 = 1
结果就是0000001 然后转为普通的十进制 结果1

十进制转二进制如何转换:

以上述67和33数字为例子
十进制数字转换二进制的方法为:原数字一直往下除2取余,逆排序

      67
      67 / 2 = 33  1
      33/ 2 = 16 1
      16/2 = 8 0
      8/2 = 4 0
      4/2 = 2 0
      2/2 = 1 0
      1/2 = 0 1    1000011
      33
      33/2 = 16 1
      16/2 = 8 0
      8/2 = 4 0
      4/2 = 2 0
      2/2 = 1 0
      1/2 = 0 1   100001

二进制转十进制如何转换:

二进制转十进制的方法为:每位原数字乘 2的N次方求和。
N = 1000011的位数(7位)
从1000011的右边开始 N = 0-6 共计7次

以1000011(67)为例:

     1000011
     1*Math.pow(2,6)+0*Math.pow(2,5)+0*Math.pow(2,4)+0*Math.pow(2,3)+0*Math.pow(2,2)+1*Math.pow(2,1)+1*Math.pow(2,0)
     1*64+0*32+0*16+0*8+0*4+1*2+1*1 = 67

相关文章

  • 快速理解位运算符和二进制数

    二进制转十进制,十进制转二进制,位运算符 | 和 & 先看个例子 十进制转二进制如何转换: 以上述67和33数字为...

  • Java 位运算符

    位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。位运算符主要针对两个二进制数的位进行逻辑运算。...

  • 算法总结-位运算

    位运算符用于二进制运算 与运算 & 二进制数 n & 1 的结果为n的末位 异或运算 ^ 长度为 L 的二进制数 ...

  • Java位运算符与移位运算符

    位运算符 位运算符主要针对两个二进制数的位进行逻辑运算,它包括:与(&)、或(|)、非(~)、异或(^)**运算规...

  • 位运算符(leetcode)

    位操作是程序设计中对位模式按位或二进制数的一元和二元操作。位运算符中,除 ~ 以外,其余均为二元运算符。 有六种位...

  • Go 语言运算符(二)

    位运算符 位运算符对整数在内存中的二进制位进行操作。下表列出了位运算符 &, |, 和 ^ 的计算: pqp & ...

  • Java一些类型及运算符

    一些运算符 <>n 有符号右移 二进制...

  • js 二进制运算符

    |、&、~、^运算符 二进制计算里面| 两数同位是0对应位才是0 &两数同位是1对应位才是1 ^两数同位相同都取0...

  • Java基础知识语法篇上

    运算符 &和&&、|和||的区别吗? & 按位与操作 只有对应的两个二进制数为1,结果位才为1 1 & 1 = 1...

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

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

网友评论

    本文标题:快速理解位运算符和二进制数

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