一、利用子網數來計算
在求子網掩碼之前必須先搞清楚要劃分的子網數目,以及每個子網內的所需主機數目。
1)將子網數目轉化為二進位制來表示
2)取得該二進位制的位數,為 N
3)取得該IP地址的類子網掩碼,將其主機地址部分的的前N位置 1 即得出該IP地址劃分子網的子網掩碼。
如欲將B類IP地址168.195.0.0劃分成27個子網:
1)27=11011
2)該二進位制為五位數,N = 5
3)將B類地址的子網掩碼255.255.0.0的主機地址前5位置 1,得到255.255.248.0,即為劃分成 27個子網的B類IP地址 168.195.0.0的子網掩碼。
二、利用主機數來計算 <BR> 1)將主機數目轉化為二進位制來表示
2)如果主機數小於或等於254(注意去掉保留的兩個IP地址),則取得該主機的二進位制位數,為 N,這裡肯定 N<8。如果大於254,則 N>8,這就是說主機地址將佔據不止8位
3)使用255.255.255.255來將該類IP地址的主機地址位數全部置1,然後從後向前的將N位全部置為 0,即為子網掩碼值。
如欲將B(c)類IP地址168.195.0.0劃分成若干子網,每個子網內有主機700臺(17
1) 700=1010111100 <BR> 2)該二進位制為十位數,N = 10(1001
)將該B類地址的子網掩碼255.255.0.0的主機地址全部置 1,得到255.255.255.255,然後再從後向前將後10位置0,即為: 11111111.11111111.11111100.00000000,即255.255.252.0。這就是該欲劃分成主機為700臺的B類IP地址 168.195.0.0的子網掩碼。
我用程式實現的過程中,按照第一種方法,很不理解的是第3句.
ip地址的前5位置一...
這裡的置1指的是?
程式我只是寫到第二步了..轉換並獲取都沒問題..
Private Sub Command1_Click()
Dim a, b, c, d, e As Long
Dim ziwang_num As Long
Dim ziwang_zhuji As Long
"下面兩句就是獲取輸入的子網數量,然後轉為二進位制數,並且獲取其長度
ziwang_num = DEC_to_BIN(Val(Text6.Text))
ziwang_num = Len(CStr(ziwang_num))
End Sub
Public Function DEC_to_BIN(Dec As Long) As String
"將10進位制轉換為二進位制
DEC_to_BIN = " "
Do While Dec > 0
DEC_to_BIN = Dec Mod 2 & DEC_to_BIN
Dec = Dec \ 2
Loop
End Function
一、利用子網數來計算
在求子網掩碼之前必須先搞清楚要劃分的子網數目,以及每個子網內的所需主機數目。
1)將子網數目轉化為二進位制來表示
2)取得該二進位制的位數,為 N
3)取得該IP地址的類子網掩碼,將其主機地址部分的的前N位置 1 即得出該IP地址劃分子網的子網掩碼。
如欲將B類IP地址168.195.0.0劃分成27個子網:
1)27=11011
2)該二進位制為五位數,N = 5
3)將B類地址的子網掩碼255.255.0.0的主機地址前5位置 1,得到255.255.248.0,即為劃分成 27個子網的B類IP地址 168.195.0.0的子網掩碼。
二、利用主機數來計算 <BR> 1)將主機數目轉化為二進位制來表示
2)如果主機數小於或等於254(注意去掉保留的兩個IP地址),則取得該主機的二進位制位數,為 N,這裡肯定 N<8。如果大於254,則 N>8,這就是說主機地址將佔據不止8位
3)使用255.255.255.255來將該類IP地址的主機地址位數全部置1,然後從後向前的將N位全部置為 0,即為子網掩碼值。
如欲將B(c)類IP地址168.195.0.0劃分成若干子網,每個子網內有主機700臺(17
1) 700=1010111100 <BR> 2)該二進位制為十位數,N = 10(1001
)將該B類地址的子網掩碼255.255.0.0的主機地址全部置 1,得到255.255.255.255,然後再從後向前將後10位置0,即為: 11111111.11111111.11111100.00000000,即255.255.252.0。這就是該欲劃分成主機為700臺的B類IP地址 168.195.0.0的子網掩碼。
我用程式實現的過程中,按照第一種方法,很不理解的是第3句.
ip地址的前5位置一...
3)將B類地址的子網掩碼255.255.0.0的主機地址前5位置 1,得到255.255.248.0,即為劃分成 27個子網的B類IP地址 168.195.0.0的子網掩碼。
這裡的置1指的是?
程式我只是寫到第二步了..轉換並獲取都沒問題..
Private Sub Command1_Click()
Dim a, b, c, d, e As Long
Dim ziwang_num As Long
Dim ziwang_zhuji As Long
"下面兩句就是獲取輸入的子網數量,然後轉為二進位制數,並且獲取其長度
ziwang_num = DEC_to_BIN(Val(Text6.Text))
ziwang_num = Len(CStr(ziwang_num))
End Sub
Public Function DEC_to_BIN(Dec As Long) As String
"將10進位制轉換為二進位制
DEC_to_BIN = " "
Do While Dec > 0
DEC_to_BIN = Dec Mod 2 & DEC_to_BIN
Dec = Dec \ 2
Loop
End Function