巧學二進制


巧學二進制

一 什么是進制

進制也就是進位制,是人們規定的一種進位方法。對於任何一種進制-----X進制,就表示某一位置上的數運算時是逢X進一位。十進制是逢十進一,十六進制是逢十六進一,二進制就是逢二進一,以此類推,X進制就是逢X進位。

二 常見二進制

十進制

0、1、2、3、4、5、6、7、8、9、10、11、12------

二進制

0、1、10、11、100、101、110、111、1000、1001、1011、1111、10000、10001、10011、10111、11111------

八進制

0、1、2、3、4、5、6、7、10、11、12、13、14、15、16、17、20、21------

十六進制

0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、10、11、12、13、14、15、16、17、18、19、1A、1B、1C、1D、1E、1F------

三 進制轉換(正整數)

其他進制轉十進制

  • 二進制 10001011 轉換位 十進制(看第一位后面有N個數 1*n^n)

    10001011 = 1 * 2^7 + 1 * 2^3 + 1 * 2^2 + 1 * 2^0= 139

  • 十進制 102 轉換為 十進制

    102 = 1 * 10^2 + 0 * 10^1 + 2 *10^0 = 102

  • 二進制 1011001 轉換為 十進制

    64 + 16 + 8 + 1 = 89

  • 八進制 76 轉換為 十進制

    7 * 8^1 + 6 * 8^0= 62

  • 十六進制 12b 轉換為 十進制

    1 * 16^2 + 2 * 16^1 + b = 299

十進制轉換為其他進制

  • 十進制 26 轉換為 二進制

      26 / 2 = 13  余  0
      13 / 2 = 6   余  1
      6  / 2 = 3   余  0
      3  / 2 = 1   余  1
      結果是  11010
    
  • 十進制 37 轉換為 二進制

      37 / 2 = 18 余 1
      18 / 2 = 9  余 0 
      9  / 2 = 4  余 1
     	4  / 2 = 2  余 0
      2  / 2 = 1  余 0
      結果 為 100101
    
  • 十進制 489 轉換為八進制

      489 / 8 = 61 余 1
      61 / 8 = 7  余 5
      結果 751
    
  • 總結:十進制轉為N進制。將十進制數除以N,得到的商再除以N,依次類推,直到得到的商小於N,然后在旁邊標出各步的余數,最后從最后一次商開始倒着拼上余數寫出來。高位補零。

2 的次方數

	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

八四二一法 快速轉換

  • 二進制 10011011 轉換為 十進制

      128 + 16 + 8 + 2 + 1 = 155
    
      128 64 32 16 8 4 2 1 (個人方法)
       1  0   0  1 1 0 1 1
    
  • 二進制 1100101001 轉換為 八進制

      1  100  101  001  對應  1  4  5  1
      結果為 1451
    
  • 十進制 59 轉換為 二進制

      32+16+8+2+1=111011
    
  • 八進制 176 轉換為 二進制

      1		7		2
      001	   111	   010
      
      1111010
    
  • 二進制 1000111011011 轉換為 十六進制

      0001	0001	1101	1011
        1		  1       D       B
      11DB
    
  • 十六進制 AD1 轉換為 二進制

      1010 1101 0001
    
  • 十進制 89 轉換為 八進制(先轉換為二進制)

      89 = 64 + 16 + 8 + 1
      001 011 001
      131
    
  • 八進制 47 轉換為 十六進制

      10 0111
      27
    

四、進制轉換(小數)

十進制轉為二進制

  • 十進制數 10.25 轉換為 二進制

      整數部分 10 轉換二進制 為 1010
      小數部分 0.25
      0.25 * 2 = 0.5 取 0  小數部分 0.5
      0.5  * 2 = 1   取 1  小數部分 0.0  結束
      最后結果  1010.01
    
  • 十進制數 12.58 轉換為 二進制

      整數部分 12 轉換為 二進制  1100
      小數部分 0.58
      0.58 * 2 = 1.16	取  1  小數部分 0.16 
      0.16 * 2 = 0.32	取  0  小數部分 0.32
      0.32 * 2 = 0.64 取  0  小數部分 0.64
      0.64 * 2 = 1.28 取  1  小數部分 0.28
      0.28 * 2 = 0.56 取  0  小數部分 0.56
      0.56 * 2 = 1.12 取  1  小數部分 0.12
      繼續 永遠也玩不了 ....
      結果 1100.100101....
    
  • 總結:

      小數部分只有是 0.5  0.25  0 .75  0.125  0.0625 等 可以是 有限小數
      轉換為分數后,分母是 2的次方數 才可以轉為有限小數
    
  • 同樣適用於 十進制 轉 其他進制

二進制轉十進制

  • 二進制 1101.1101 轉為 十進制

      整數部分 1101 轉為 十進制 為 13
      小數部分0.1101= 1 * 2^-1 + 1 * 2^-2 + 0 * 2^-3 + 1 * 2^-4= 0.5 + 0.25 + 0 + 0.0625 = 0.8125
      13.8125
    
  • 同樣適用 其他進制 轉換為 十進制

熟記 2 的 負數次方

	2^-1=0.5
	2^-2=0.25
	2^-3=0.125
	2^-4=0.0625
	2^-5=0.03125
	2^-6=0.015625
	2^-7=0.0078125
	2^-8=0.00390625
	2^-9=0.00195312
	2^-10=0.00097656

二進制和八進制或十六禁止的小數轉換

  • 二進制 10.10010101 轉換為 八進制

      整數部分 10 轉 八進制 為 2
      小數部分 進行 拆分 3個一組,不足右補零
      100——>4
      101——>5
      010——>2
      最后結果 2.452
    
  • 二進制數 10.10010101 轉換為 十六進制

      整數部分 10 轉 十六進制 為 2
      小數部分進行拆分4個一組,
      1001->9
      0101->5
      最后結果 2.95
    
  • 八進制 17.236 轉換為 二進制

      整數部分17轉二進制為1111
      小數部分進行拆分 一個拆分成3個數字為一組
      2->010
      3->011
      6->110
      最后結果 1111.010011110
    
  • 十六進制 a.3ef 轉換為 二進制

      整數部分 a 轉 二進制 為 1010
      小數部分進行拆分 一個拆分成4個數字為一組
      3->0011
      e->1110
      f->1111
      最后結果 1010.001111101111
    

五、二進制運算

二進制加法

  • 1101 + 100101

         1101
      +100101
      ---------
       110010
    
  • 直接轉化為十進制算好之后轉為二進制

      1101=13
      100101=37
      13+37=50
      110101
    

二進制減法

  • 1001001 - 10011

      1001001
      - 10011
      ---------------
    	 110110  
    

二進制乘法

  • 1001 * 110

        1001
      x  110
      -------------
        0000
       1001
      1001
      ---------------
      110110
    

二進制除法

  • 100110 / 110

      	        110	
      	-----------------
      110)100110
      	    110
      	--------------------------
      		111
      		110
      	--------------------------
      		    10
    
      結果 110 余 10


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM