(二)进制、数据类型

1.进制(二进制 八进制 十六进制)
    二进制:(只有0和1)
    权:0 1 2 3
    基数:2
    底数:2^0  2^1  基数^(位数-1)
    
    十进制 <-----> 二进制转化
     0                0
     1                1
     2                10
     3                11
     4                100
     5                101
     6                110
     7                111
     8                1000
     9                1001
    
    
     57             111001  (除法,逆序排)
     67             1000011
     129=128+1          10000001
     96=64+32           1100000
     79=64+15=           1001111
     58             111010
     1010 1010= 2^7+2^5+2^3+2^1=170
     11 1011= 2^5+2^4+2^3+2+1=32+16+8+3=43+16=59
    
补码(32位二进制):第一位为符号位 其余位 取反+1
    十进制              二进制
    -1                11111111 11111111 11111111 11111111
    -2                11111111 11111111 11111111 11111110
    -3                11111111 11111111 11111111 11111101  
    -4                11111111 11111111 11111111 11111011
    -6                11111111 11111111 11111111 11111010
    -7                11111111 11111111 11111111 11111001
    -8                11111111 11111111 11111111 11111000
    -9                11111111 11111111 11111111 11110111        
    
    2^3=8
    2^4=16
    2^5=32
    2^6=64
    2^7=128
    2^8=256
    
    -56 = -(55+1)=1(32+16+4+2+1)=1(110111)=11111111 11111111 11111111 11001000
            
    11111111 11111111 11111111 10101001 =-(0101 0111)= -(64+16+7)=-87
    11111111 11111111 11111111 1101 1011 =-(00100101)= -(32+4+1)=-37
    
    -79 = 1(64+15)= 1(100 1111) = 11111111 11111111 11111111 10110001
    -39 =-(38+1)  = 1(32+4+2+1) = 1(10 0111)=11111111 11111111 11111111 11011001

几位进制的取值范围:(-2^(位数-1),2^(位数-1)-1)
八位二进制:
    最大值:01111111=2^7-1=127
    最小值:10000000=-(2^7-1+1)=-128
    
十六位二进制:
    最大值:0111111111111=2^15-1=32767
    最小值:1000000000000=-(2^15-1+1)=-32768

32位二进制:
    最大值:2^31-1
    最小值:-2^31
    

八进制、十六进制

八进制:数字前面加0表示八进制
8=2^3 一位的八进制可以转换成3位二进制
    0456(8)=100 100 110
    10 111 011=273 后面数前面补0
    
十六进制:
16=2^4         一位十六进制可以转换成4位二进制
0 1 2 3 4 5 6 7 8 9 a b c d e f

0xef= 11101111
1 0101 1111 =0x15f

456 =1 0010 1110 =0x12e

=======================================================
数据类型:基本类型、引用类型
    基本类型:8种
        1.整型:byte short int long
            byte:八位的二进制(-128,127)
            short:十六位二进制(-32768,32767)
            int:32位的二进制(-2^31,2^31-1)
                整型字面量默认使用int类型    
            long:64位的二进制(-2^63,2^63-1)
            
            要求:几种、几位、int默认
            
        2.浮点型:flat double(科学计数法)
            浮点型的字面量默认使用double类型
            float:32位,其中第一位为符号位,接着8位为指数位,剩下的23位为尾数位
                精确的位数是7到8位  
            double:64位,其中第一位为符号位,接着11位为指数位,剩下的52位为尾数位
                精确位数为16-17位
            要求:优先double、精确位数    
            
        3.布尔型:boolean
            true false
            布尔表达式
        4.字符型:char
            本质上是无符号的16位的二进制数(0,2^16-1 = 65535)
            值是unicode值
            
基本数据类型的转换:
    1.自动类型转换
        byte short int long float double
             char
            
        本质:将小范围的值赋值给大范围的值;
        注意:浮点型的精度问题
    2.强制类型转换
        本质:强制性的将大类型转换成小类型


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值