zoukankan      html  css  js  c++  java
  • JavaScript按位运算符~

    1. JavaScript按位运算符

    Bit operators work on 32 bits numbers.

    2. JavaScript按位运算符~

    值得注意的是,在JavaScript中,~5的值是-6,而不是10

    The examples above uses 4 bits unsigned examples. But JavaScript uses 32-bit signed numbers.
    Because of this, in JavaScript, ~ 5 will not return 10. It will return -6.
    ~00000000000000000000000000000101 will return 11111111111111111111111111111010

    那么问题来了,为什么11111111111111111111111111111010等于-6?不妨先了解一下负数的二进制表示。
    负数的绝对值的二进制表示为原码,对原码取反得到补码,负数的二进制表示就是该补码加1。
    所以,-6的原码是00000000000000000000000000000110,补码是11111111111111111111111111111001,补码加1就是11111111111111111111111111111010

    那么由11111111111111111111111111111010-6就是逆操作而已。

  • 相关阅读:
    probuf了解
    rebbitmq-RPC(C#)
    获取指定数量的有序列表
    RPC(Remote Procedure Call Protocol)
    正则表达式(c#)
    02_python函数
    01_python基础
    养生茶
    测试左右移浅淡
    python类的组合
  • 原文地址:https://www.cnblogs.com/gzhjj/p/13156750.html
Copyright © 2011-2022 走看看