• java位移运算


    public static void main(String[] args) {
    //负数的补码是其正数原码 取反加1;
    //-4(补码) --》 4(原码)00000000 00000000 00000000 00000100
    // --》1111111 11111111 11111111 11111011
    // --》 1111111 11111111 11111111 11111100(-4的补码)
    int a = -4;

    //带符号位的位移运算,高位是1补1,高位是0补0,往右移动一个 ,1111111 11111111 11111111 11111110 (补码)
    // 最高位还是1是个负数,将其还原成 原码,减一,除符号位取反
    // 1111111 11111111 11111111 11111110(补码)
    // --》 1111111 11111111 11111111 11111101
    // --》1000000 00000000 00000000 00000010(原码)
    System.out.println(a >> 1);

    //不带符号为的位移运算,高位只补0,往右移动一个 ,0111111 11111111 11111111 11111110 (补码)
    // 最高位是0是个正数,将其还原成 原码,正数的原反补 都是自身
    System.out.println(a >>> 1);
    }

    输出结果

    -2
    2147483646

  • 相关阅读:
    zabbix3.4报警队列过多清理
    k8s安装nexus并导入第三方jar包
    kubeadmin安装最新版本的kubenets
    aws相关知识
    mysql忘记root密码做法
    mysql实现读写分离(proxy)与高可用(MGR)
    jvm调优
    zabbix监控php-fpm的性能
    脚本
    opencv demo
  • 原文地址:https://www.cnblogs.com/xlblog/p/13090091.html
Copyright © 2020-2023  润新知