进制的转换
一、进制的表示
二进制(B):
  
      
       
        
        
          0 
         
        
          , 
         
        
          1 
         
        
          , 
         
        
          10 
         
        
          , 
         
        
          11 
         
        
          , 
         
        
          100 
         
        
          , 
         
        
          101 
         
        
          , 
         
        
          110 
         
        
          , 
         
        
          111 
         
        
          , 
         
        
          1000 
         
        
       
         0,1,10,11,100,101,110,111,1000 
        
       
     0,1,10,11,100,101,110,111,1000
 对应的十进制是: 
      
       
        
        
          0 
         
        
          , 
         
        
          1 
         
        
          , 
         
        
          2 
         
        
          , 
         
        
          3 
         
        
          , 
         
        
          4 
         
        
          , 
         
        
          5 
         
        
          , 
         
        
          6 
         
        
          , 
         
        
          7 
         
        
          , 
         
        
          8 
         
        
       
         0,1,2,3,4,5,6,7,8 
        
       
     0,1,2,3,4,5,6,7,8
 八进制(O):
  
      
       
        
        
          0 
         
        
          , 
         
        
          1 
         
        
          , 
         
        
          2 
         
        
          , 
         
        
          3 
         
        
          , 
         
        
          4 
         
        
          , 
         
        
          5 
         
        
          , 
         
        
          6 
         
        
          , 
         
        
          7 
         
        
          , 
         
        
          10 
         
        
          , 
         
        
          11 
         
        
          , 
         
        
          12 
         
        
       
         0,1,2,3,4,5,6,7,10,11,12 
        
       
     0,1,2,3,4,5,6,7,10,11,12
 对应的十进制是: 
      
       
        
        
          0 
         
        
          , 
         
        
          1 
         
        
          , 
         
        
          2 
         
        
          , 
         
        
          3 
         
        
          , 
         
        
          4 
         
        
          , 
         
        
          5 
         
        
          , 
         
        
          6 
         
        
          , 
         
        
          7 
         
        
          , 
         
        
          8 
         
        
       
         0,1,2,3,4,5,6,7,8 
        
       
     0,1,2,3,4,5,6,7,8
 十进制(D):
  
      
       
        
        
          0 
         
        
          , 
         
        
          1 
         
        
          , 
         
        
          2 
         
        
          , 
         
        
          3 
         
        
          , 
         
        
          4 
         
        
          , 
         
        
          5 
         
        
          , 
         
        
          6 
         
        
          , 
         
        
          7 
         
        
          , 
         
        
          8 
         
        
          , 
         
        
          9 
         
        
          , 
         
        
          10 
         
        
       
         0,1,2,3,4,5,6,7,8,9,10 
        
       
     0,1,2,3,4,5,6,7,8,9,10
 十六进制(H):
  
      
       
        
        
          0 
         
        
          , 
         
        
          1 
         
        
          , 
         
        
          2 
         
        
          , 
         
        
          3 
         
        
          , 
         
        
          4 
         
        
          , 
         
        
          5 
         
        
          , 
         
        
          6 
         
        
          , 
         
        
          7 
         
        
          , 
         
        
          8 
         
        
          , 
         
        
          9 
         
        
          , 
         
        
          A 
         
        
          , 
         
        
          B 
         
        
          , 
         
        
          C 
         
        
          , 
         
        
          D 
         
        
          , 
         
        
          E 
         
        
          , 
         
        
          F 
         
        
          , 
         
        
          10 
         
        
          , 
         
        
          11 
         
        
          , 
         
        
          12 
         
        
       
         0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,10,11,12 
        
       
     0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,10,11,12
注意:计算机中的一切数据,如数字,汉字,图片,声音,视频,指令等都是用二进制进行表示和传输的。–通过转码展示出来
 ASCII:美国信息交换标准代码,一般使用7位二进制数来表示字母,数字,标点符号及部分特殊控制字符(128种)(例如:A :65,a:97)
二、 十进制和其他进制间的转换
1、其他进制转十进制
R进制转十进制使用按权展开法,其具体操作方法为:将R进制的每一位数值用Rk 形式表示,即幂的底数是R,指数是k,k与改位和小数点之间的距离有关。
 当该位位于小数点左边,k值是该位和小数点之间数码的个数,而当该位位于小数点右边,k值是负数,其绝对值是该位和小数点之间数码的个数加1.
 R进制数:
  
      
       
        
         
         
           X 
          
          
          
            n 
           
          
            − 
           
          
            1 
           
          
         
        
          . 
         
        
          . 
         
        
          . 
         
        
          . 
         
         
         
           X 
          
         
           0 
          
         
        
          . 
         
         
         
           X 
          
          
          
            − 
           
          
            1 
           
          
         
        
          = 
         
         
         
           X 
          
          
          
            n 
           
          
            − 
           
          
            1 
           
          
         
         
         
           R 
          
          
          
            n 
           
          
            − 
           
          
            1 
           
          
         
        
          + 
         
        
          . 
         
        
          . 
         
        
          . 
         
         
         
           X 
          
         
           0 
          
         
         
         
           R 
          
         
           0 
          
         
        
          + 
         
         
         
           X 
          
          
          
            − 
           
          
            1 
           
          
         
         
         
           R 
          
          
          
            − 
           
          
            1 
           
          
         
        
       
         X_{n-1}....X_0.X_{-1} = X_{n-1}R^{n-1}+...X_0R^{0}+X_{-1}R^{-1} 
        
       
     Xn−1....X0.X−1=Xn−1Rn−1+...X0R0+X−1R−1
例如:二进制转十进制
  
      
       
        
        
          10100.01 
         
        
          ( 
         
        
          B 
         
        
          ) 
         
        
          = 
         
        
          1 
         
        
          ∗ 
         
         
         
           2 
          
         
           4 
          
         
        
          + 
         
        
          1 
         
        
          ∗ 
         
         
         
           2 
          
         
           2 
          
         
        
          + 
         
        
          1 
         
        
          ∗ 
         
         
         
           2 
          
          
          
            − 
           
          
            2 
           
          
         
        
          = 
         
        
          20.25 
         
        
          ( 
         
        
          D 
         
        
          ) 
         
        
       
         10100.01(B)=1*2^4+1*2^2+1*2^{-2}=20.25(D) 
        
       
     10100.01(B)=1∗24+1∗22+1∗2−2=20.25(D)
 例如:八进制
  
      
       
        
        
          666.066 
         
        
          ( 
         
        
          O 
         
        
          ) 
         
        
          = 
         
        
          6 
         
        
          ∗ 
         
         
         
           8 
          
         
           2 
          
         
        
          + 
         
        
          6 
         
        
          ∗ 
         
        
          8 
         
        
          + 
         
        
          6 
         
        
          ∗ 
         
         
         
           8 
          
         
           0 
          
         
        
          + 
         
        
          6 
         
        
          ∗ 
         
         
         
           8 
          
          
          
            − 
           
          
            2 
           
          
         
        
          + 
         
        
          6 
         
        
          ∗ 
         
         
         
           8 
          
          
          
            − 
           
          
            3 
           
          
         
        
          = 
         
        
          438.105469 
         
        
          ( 
         
        
          D 
         
        
          ) 
         
        
       
         666.066(O)=6*8^{2}+6*8+6*8^{0}+6*8^{-2}+6*8^{-3}=438.105469(D) 
        
       
     666.066(O)=6∗82+6∗8+6∗80+6∗8−2+6∗8−3=438.105469(D)
2、十进制转其他进制
(1)十(D)进制转二进制(B)
 整数:采用"除2取余,逆序排列"法,用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为小于1时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
 小数:转换成二进制小数采用"乘2取整,顺序排列"法,具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,此时0或1为二进制的最后一位。或者达到所要求的精度为止;然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。
 例如:255.625(D)=11111111.101(B)
 
 
 (2)十(D)进制转八进制(O)
 整数:采用"除8取余,逆序排列"法,先得到的余数作为低位有效位,后得到的余数作为高位有效位;
 小数:转换成八进制小数采用"乘8取整,顺序排列"法
 例如:266.67(D)=412.527(O)
 266/8=33 ======余2
 33/8=4 ======余1
 4/8=0 ======余4
 0.678=5.36 -------取整5
 0.368=2.88 -------取整2
 0.888=7.04 -------取整7
 0.048=0.32 -------取整0
(3)十进制(D)转十六进制(H)
整数:采用"除16取余,逆序排列"法,先得到的余数作为低位有效位,后得到的余数作为高位有效位;
 小数:转换成八进制小数采用"乘16取整,顺序排列"法
 例如1616.16(D)=650.28155(H)
 1616/16=101-----余0
 101/16=6----------余5
 6/16=0-------余6
 0.1616=2.56
 0.5616=8.96
 0.9616=15.36
 0.3616=5.76
 …
其他进制也是同理
3、二进制,八进制,十六进制之间的转换
(1)二进制转八进制
 取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位
 
 
例如:二进制转八进制
 10100.011101(B)=24.35(O)
(2)二进制转十六进制
 十六进制的计算是以小数点为中心,向左右两边扩展,4个数为一组
 
 例如:10110011.1011(B)=B3.B(H)
 整数:
  
      
       
        
        
          1011 
         
        
          = 
         
        
          1 
         
        
          ∗ 
         
         
         
           2 
          
         
           3 
          
         
        
          + 
         
        
          1 
         
        
          ∗ 
         
        
          2 
         
        
          + 
         
        
          1 
         
        
          ∗ 
         
         
         
           2 
          
         
           0 
          
         
        
          = 
         
        
          B 
         
        
       
         1011=1*2^{3}+1*2+1*2^{0}=B 
        
       
     1011=1∗23+1∗2+1∗20=B
  
      
       
        
        
          0011 
         
        
          = 
         
        
          1 
         
        
          ∗ 
         
        
          2 
         
        
          + 
         
        
          1 
         
        
          ∗ 
         
         
         
           2 
          
         
           0 
          
         
        
          = 
         
        
          3 
         
        
       
         0011=1*2+1*2^{0}=3 
        
       
     0011=1∗2+1∗20=3
 小数:
  
      
       
        
        
          1011 
         
        
          = 
         
        
          1 
         
        
          ∗ 
         
         
         
           2 
          
         
           3 
          
         
        
          + 
         
        
          1 
         
        
          ∗ 
         
         
         
           2 
          
         
           1 
          
         
        
          + 
         
        
          1 
         
        
          ∗ 
         
         
         
           2 
          
         
           0 
          
         
        
          = 
         
        
          B 
         
        
       
         1011=1*2^{3}+1*2^{1}+1*2^{0}=B 
        
       
     1011=1∗23+1∗21+1∗20=B
(3)八进制转二进制
将一位的八进制数转化为三位的二进制数,不足三位的补0
 例如:
 324(O)=011010100=11010100(B)
(4)十六进制转二进制
 将一位的十六进制数转化为四位的二进制数,不足四位的补0
 例如:
 324(H)=001100100100=1100100100(B)
 7C(H)=1111100(B)
 (七)十六进制与八进制相互转换
 可以通过将十六进制转为二进制之后转为八进制,八进制转十六进制也可同理。
 



















