Linux 子網掩碼計算, 二進制十進制互相轉換


看下邊例子

192.168.0.1/24
192.168.0.1/32
192.168.0.1/28

 

 

上邊24,32,28對應的掩碼都是什么,怎么計算的

24,32,28,對應的就是多少個二進制的1

24

11111111 11111111 11111111 00000000

 

32

11111111 11111111 11111111 11111111

 

28

11111111 11111111 11111111 11110000

 

二進制轉換十進制

如何轉換的呢

首先 11111111 = 255

那么28就是

11111111 11111111 11111111 11110000 255.255.255.[2^7+2^6+2^5+2^4]=240 由此可以計算出他的掩碼為255.255.255.240 

十進制轉換二進制

那么,十進制轉換二進制是如何轉換的呢

我們先寫一個數

241

給它除2,能整除的記錄0,不能整除的記錄1

241/2 = 120 ········    1   
120/2 = 60  ········    0
60/2 = 30   ········    0
30/2 = 15   ········    0
15/2 = 7    ········    1
7/2  = 3    ········    1
3/2  = 1    ········    1
1/2  = 1/2  ········    1

 

由下到上依次為1111 0001 那么結果對不對呢,我們計算一下

1      1     1     1      0    0   0    1   
2^7 + 2^6 + 2^5 + 2^4  +  0  + 0 + 0 + 2^0
128 + 64  + 32  + 16   +  0  + 0 + 0 + 1 =  241

 


免責聲明!

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



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