二进制转换及javascript的位操作符

本文详细介绍了二进制转换原理,包括十进制转二进制和二进制转十进制的方法,以及二进制在计算机中的存储方式。接着讲解了JavaScript中的位操作符,如按位非、按位与、按位或、按位异或、左移、有符号右移和无符号右移,并通过实例解析了它们的工作机制。位操作符在提高性能的同时可能降低代码可读性,但理解它们对于深入掌握计算机底层运作和JavaScript编程至关重要。
摘要由CSDN通过智能技术生成

位操作符

  • 因为位操作符在数值都表示的最底层的操作,因此性能上比其他操作符要好,只做了解,性能好,但是会导致代码可读性降低
  • 二进制
    • 二进制是计算技术中广泛采用的一种数制。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。数字计算机只能识别0和1。简单,易于电子方式的实现。
    • 十进制转二进制
      • 用十进制数字除以2,取余数,用得到的结果继续除以2,一直到1除以2,然后求倒序就是二进制了
      • 例如:10,10/2 = 5 余 0 ;5/2 = 2余1;2/2 = 0;这时候除尽了,则进行最后一次计算,1/2除不开,直接等于1即可;最后组合余数为:0101,然后倒序就是1010,因此10转为二进制就是1010了
      • 因此,9的二进制就是9/2=4余1,4/2=2余0,2/2=0余0,1/2余1,得1001,倒序9的2进制就是1001
      • 39的二进制就是:39/2=19余1,19/2=9余1,9/2=4余1,4/2=2余0,2/2=0余0,1/2余1,组合余数:111001,倒序,39的二进制就是100111
    • 高位补0
      • 在内存中某一个类型的值是有固定长度的,比如int类型的是32位的,10转为二进制位1010,那么就会在1010前面补28个0,补为32位进行存储
      • 一般正数高位补0,负数高位补1
    • 二进制转十进制
      • 按权相加法
      • 10的二进制是1010,从右往左按下标来数,0的下标是0,1为1,0为2,1为3,把这些二进制中数字是1的下标当做2的幂进行相加,那么1010 = 0 + 2^1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值