位非运算(~) 详细解释

  在网上找不到~10的详细解释, 难受的一匹, 想了老半天

  这些位运算的计算都是以补码的方式进行的, 因为计算机底层都是以补码进行计算的

  

  位非运算(~): 转二进制后取反---0变1, 1变0

  

  举一个超详细的例子:

  ~10的计算:

    10的二进制: 0000 1010  ( 以8位进行描述 )

    正数的补码就是原码

    10的补码: 0000 1010

    ~10:  1111 0101   (此时这是补码)

    第一位为符号位:

    所以~10 的反码: 1111 0100

    ~10的原码: 1000 1011

    转为十进制就为:  -11

    

posted @ 2019-06-03 13:22  Evildoes  阅读(2343)  评论(0编辑  收藏  举报