程序员必知小知识

我们学计算机的,无论是学C语言,C++还是java等各种语言,都是要知道进制转换的,虽然进制转换说难不难,但是,也是程序员必备的知识,下面就是我们都应该会的转至方法

程序员必知小知识_第1张图片

 

十进制:0 1 2 3 4 5 6 7 8 9  逢十进一
二进制:0 1 逢二进一
八进制:0 1 2 3 4 5 6 7 逢八进一
十六进制:0 1 2 3 4 5 6 7 8 9 A(10) B(11) C(12) D(13) E(14) F(15) 逢十六进一

生活中的进制:
    六十进制:时间里的秒和分钟采用的就是六十进制
    二十四进制:每天24小时,进入下一天
--------------------------------------------------------------------------------------------
进制转换:
    十进制整数转换为二进制、八进制、十六进制
        十进制整数转换为二进制--->除2倒取余数
        183---->二进制--->10110111
            183/2=91....1
            91/2 = 45...1
            45/2 = 22...1
            22/2 = 11...0
            11/2 = 5....1
            5/2 = 2.....1
            2/2 = 1.....0
            1/2 = 0.....1
        十进制整数转换为八进制--->除8倒取余数
        183--->八进制--->267
            183/8 = 22...7
            22/8 = 2 ....6
            2/8 = 0......2
        十进制数转换为十六进制--->除16倒取余数
        591--->十六进制--->24F
            591/16 = 36....15(F)
            36/16 = 2.......4
            2/16 = 0........2
    十进制小数转换为二进制、八进制、十六进制
        十进制小数转换为二进制--->乘2顺取整
        0.39--->二进制--->0.0110
            0.39*2 = 0.78            0
            0.78*2 = 1.56            1
            0.56*2 = 1.12            1
            0.12*2 = 0.24            0
            0.24*2 = 0.48            0
        十进制小数转换为八进制--->乘8顺取整
        0.39--->八进制--->0.3075
            0.39*8=3.12            3
            0.12*8=0.96            0
            0.96*8=7.68            7
            0.68*8=5.44            5
        十进制数转换为十六进制--->乘16顺取整
        0.68--->十六进制--->0.AE147
            0.68*16= 10.88        10(A)
            0.88*16 = 14.08        14(E)
            0.08*16 = 1.28        1
            0.28*16 = 4.48        4
            0.48*16 = 7.68        7

程序员必知小知识_第2张图片
            
    二进制、八进制、十六进制转换为十进制------》按位权展开求和
        二进制数转换为十进制:
            1011011.01011--->十进制数---->
                1*2^6+0*2^5+1*2^4+1*2^3+0*2^2+1*2^1+1*2^0+0*2^-1+1*2^-2+0*2^-3+1*2^-4+1*2^-5
            记住下列结果:
                2^0=1
                2^1=2
                2^2=4
                2^3=8
                2^4=16
                2^5=32
                2^6=64
                2^7=128
                2^8=256
                2^9=512
                2^10=1024
        八进制转换为十进制:
            7302.506---->十进制数---->
                7*8^3+3*8^2+0*8^1+2*8^0+5*8^-1+0*8^-2+6*8^-3
        十六进制数转换为十进制数:
            94F5D.30B4--->十六进制--->
                9*16^4+4*16^3+15*16^2+5*16^1+13*16^0+3*16^-1+0*16^-2+11*16^-3+4*16^-4
        
        二进制--->八进制:
            1)二进制--->十进制--->八进制
            2)三合一
                11011.01101-----》从小数点开始向左向右,每3位组成一个整体,转换为十进制,最左边的不够3位,就在最左边补0,最右边的不够3位,就在最右边补0
        八进制--->二进制
            1)八进制--->十进制--->二进制
            2)一分为三
                761.54--->二进制--->将每一个八进制数字转换为3位数字的二进制数表示
            
            
        二进制--->十六进制:
            1)二进制--->十进制--->十六进制
            2)四合一
                1110110101011.10111001---》从小数点开始向左向右,每4位组成一个整体,转换为十进制数,最左边的不够4位,就在最左边补0,最右边的不够4位,就在最右边补0
        十六进制--->二进制数:
            1)十六进制--->十进制--->二进制数 
            2)一分为四
                9F5C.46A3--->将每一个十六进制数转换为4位数组的二进制数表示
                
        补充:快速算十进制数转换为二进制数
            135=2^7+2^2+2^1+2^0=10000111

我们都将成为最棒的程序员,成为自己想成为的人加油!!   !   !

 

你可能感兴趣的:(java,servlet,数据库)