• 进制转换


    进制

    介绍:

    对于整数,有四种表示方式:

    • 二进制:0,1 ,满 2 进 1.以 0b0B 开头。
    • 十进制:0-9 ,满 10 进 1。
    • 八进制:0-7 ,满 8 进 1. 以数字 0 开头表示
    • 十六进制:0-9 及 A(10)-F(15),满 16 进 1. 以 0x0X 开头表示。此处的 A-F 不区分大小写

    1.进制的转换

    • 计算机基础已学复习即可

    2.位运算

    java中有7个位运算(&、|、 ^ 、~、>>、<<和 >>>)

    1. 要先得到补码,然后在进行运算

    image-20211119163331170

    2.1位运算符

    1. 算术右移 >>:低位溢出,符号位不变,并用符号位补溢出的高位
    2. 算术左移 <<: 符号位不变,低位补 0
    3. >>> 逻辑右移也叫无符号右移,运算规则是: 低位溢出,高位补 0
    4. 特别说明:没有 <<< 符
    
    public class BinaryTest{
    
    	public static void main(String[] args){
            
    		//>>算术右移低位溢出<<算术左移动,符号位不变,符号位补溢出的高位
    		//二进制往后移一位就/2
    		//向前移一位就*2
    		int a = 1>>2; //1 => 00000001 => 00000000 01 本质1/2/2 = 0
    		int c = 1<<2; //1 => 00000001 => 00000100 本质 1*2*2 = 4
    		System.out.println("a=" + a);
    		System.out.println("b=" + c);
    		System.out.println(4<<3);//32
    		System.out.println(15>>2);//3
    	
    	}
    }
    

    3.二进制的运算说明

    1. 二进制是逢2进位的进位制,0、1是基本算符

    image-20211119161823586

    3.1原码、反码、补码

    image-20211119162104759

    1. 二进制的最高位是符号位:0表示正数,1表示负数
    2. 正数的原码,反码,补码都一样(三和一
    3. 负数的反码 = 它的原码符号位不变,其他位取反
    4. 负数的补码 = 它的反码+1,负数的反码 = 负数的补码-1
    5. java没有无符号数,换言之,Java中的数都是有符号的
    6. 在计算机运行的时候,都是以补码的方式来运算的
    7. 当我们看运算结果的时候要看他的原码
  • 相关阅读:
    P3368 【模板】树状数组 2
    P3374 【模板】树状数组 1
    P1631 序列合并
    P1387 最大正方形
    P1197 [JSOI2008]星球大战
    P2866 [USACO06NOV]糟糕的一天Bad Hair Day
    P1196 [NOI2002]银河英雄传说
    SP1805 HISTOGRA
    P1334 瑞瑞的木板
    2019信息学夏令营游记
  • 原文地址:https://www.cnblogs.com/DL50/p/15798750.html
Copyright © 2020-2023  润新知