ASP ,IP位址分段計算

2021-03-31 08:56:31 字數 1534 閱讀 9302

asp ,ip位址分段計算

在vbs中沒有位操作,這樣在乙個頁面中用到了js和vbs,並不好,如果用vbs也可以,不過羅嗦了一些,而且有一點注意,如果在vbs中split("202.102.29.6",","),會得到202,102,29三個數,得不到最後乙個6,所以需要將ip換成split("202.102.29.6" & ".",",")

我用vbs做的,由於沒有位操作,所以做得比較麻煩

<%

function ip2int(ipstr)

dim iptemp,max

iptemp = split(ipstr&".",".")

max = ubound(iptemp)

if max <> 4 then

exit function

end if

dim a,b,i

a = "&h"

for i = 0 to 3

b = hex(iptemp(i))

if len(b) = 1 then

b = "0"&b

end if

a = a&b

next

ip2int = clng(a)

end function

function int2ip(ip)

dim iptemp,a,ipstr,i,length

iptemp = hex(ip)

length = 8 - len(iptemp)

for i = 1 to length

iptemp = "0" & iptemp

next

a = left(iptemp,2)

a = "&h" & a

i = cint(a)

a = cstr(i)

ipstr = a & "."

a = mid(iptemp,3,2)

a = "&h" & a

i = cint(a)

a = cstr(i)

ipstr = ipstr & a & "."

a = mid(iptemp,5,2)

a = "&h" & a

i = cint(a)

a = cstr(i)

ipstr = ipstr & a & "."

a = right(iptemp,2)

a = "&h" & a

i = cint(a)

a = cstr(i)

ipstr = ipstr & a

int2ip = ipstr

end function

dim testip,testint

testip="202.102.29.6"

testint = ip2int(testip)

response.write testip & " will be encoded to " & testint & "

"response.write testip & " will be dencoded to " & int2ip(testint) & "

"%>

關於cpu分段的段位址計算

微機原理 這本課程學過,不過後來我忘記了。今天覆習的時候,作為學渣的我解了好大乙個疑惑。書上說,8086cpu有16位的資料匯流排和20位的位址匯流排。所以,為了能讓16位的cpu能夠驅動20位的記憶體,採用了分段的形式。原理和內容都在這裡,不詳細展開了 我們知道段暫存器是16位的,16為的ip指標...

位址對映 分段分頁

linux核心採用頁式儲存管理。虛擬位址空間劃分成固定大小的 頁面 由mmu將虛擬位址對映成某個物理記憶體頁面中的位址。一 三種不同的位址 邏輯位址經分段機制後就成線性位址 如果不啟用分頁,那麼此線性位址和實體地址相同。線性位址經分頁轉換後就成了實體地址。二 分段 1 段選擇符和段暫存器 index...

IP位址分類和分段

ip位址是由32位二進位制數字構成,採用 點分十進位制 方法表示的唯一位址。通常區分如下 1 五類ip 2 特殊用途的ip 3 私有ip 1 五類ip 也就是說,分為以下幾類 a 0.0.0.0 127.255.255,其中段0和127不可用,可用位址範圍1.0.0.0.127.255.255.25...