zoukankan      html  css  js  c++  java
  • 原反补码

    直接看代码

     1      var a=5;            // 00000101;
     2         console.log(a|2);    // 00000101 | 00000010 -->00000111--->7
     3         console.log(a&2);    // 00000101 | 00000010 -->00000000--->0
     4         console.log(a^2);    // 00000101 | 00000010 -->00000111--->7
     5         a=-5;                // 原码:10000101; 反码:11111010; 补码:11111011;
     6                             //-4 原码:10000100; 反码:11111011; 补码:11111100; 
     7         console.log(a|-4);    // 11111011 | 11111100 -->11111111--->11111110--->10000001-->-1
     8         console.log(a&-4);    // 11111011 | 11111100 -->11111000--->11110111--->10001000-->-8
     9         console.log(a^-4);    // 11111011 | 11111100 -->00000111-->7
    10         
    11         var arr =[1];
    12         console.log(typeof "");
    13         
    14         var a=1,c=1;
    15         var b=(++a)+a;//前增量:先自增再赋值
    16         var d=(c++)+c;//后增量:先赋值再自增
    17         console.log(b+","+d); */
    18         var a = 0x1234;
    19         var b = 0x00ff;
    20         console.log(a&b);
    21         console.log(a|b);
    22         console.log(a^b);
    23         //0001 0010 0011 0100
    24         //0000 0000 1111 1111
    25     //&    //0000 0000 0011 0100
    26     //|    //0001 0010 1111 1111
    27     //^    //0001 0010 1100 1011
    28         
    29         //左移一位相当于乘以2 左移两位相当于乘以4 以此类推...
    30         console.log(7<<2);//0000 0111  <<2   0001 1100 -->28
    31         //带符号右移相当于除以2(余数忽略) 左移两位相当于除以4 以此类推... (正数高位补0,负数高位补1)
    32         console.log(7>>2);//0000 0111  >>2   0000 0001 -->1
    33         console.log(-9>>4);//1000 1001-->1111 0110-->1111 0111 >>4   1111 1111-->1111 1110-->1000 0001 -->-1
    34         console.log(-1>>4);//1000 0001-->1111 1110-->1111 1111 >>4   1000 0111-->1111 1110-->1000 1001 -->-1
    35         //无符号右移高位补0   32位
    36         console.log(-5>>>3);
    37         //1000 0000 0000 0000 0000 0000 0000 0101
    38         //1111 1111 1111 1111 1111 1111 1111 1010
    39         //1111 1111 1111 1111 1111 1111 1111 1011
    40         //1111 1111 1111 1111 1111 1111 1111 1111 >>>4 
    41         //1111 1111 1111 1111 1111 1111 1111
    42         console.log(-1>>>4);
    43         console.log(-1>>>1);
  • 相关阅读:
    一些简单的逻辑题
    3种数据类型之间的转换
    搭建selenium + Python环境的总结:
    杂记
    Eclemma的安装
    LR----实现WebService测试
    LR--实现HTTP协议的接口测试
    Loadrunner---解决乱码问题
    selenium常用API实例
    JMeter中响应数据显示乱码问题解决
  • 原文地址:https://www.cnblogs.com/ccylovehs/p/8570495.html
Copyright © 2011-2022 走看看