ASP(VBScript)二、八、十、十六进制转换

作者:vkvi 来源:ITPOW(原创) 日期:2009-4-22

十进制转换成二进制

function DecToBin(number)
    dim remainder
    remainder = number
    do while remainder > 0
        DecToBin = CStr(remainder mod 2) & DecToBin
        remainder = remainder \ 2
    loop
end function
 
document.write(DecToBin(8) & "<br>") ' 显示为 1000

十进制转换成八进制

Oct(number)

返回表示数字八进制值的字符串。

document.write(Oct(10) & "<br>") ' 显示为 12

十进制转换成十六进制

Hex(number)

返回表示十六进制数字值的字符串。

document.write(Hex(10) & "<br>") ' 显示为 A,注意是大写。

二进制转换成十进制

function BinToDec(binStr)
    dim i
    for i = 1 to Len(binStr)
        BinToDec = BinToDec + (CInt(Mid(binStr, i, 1)) * (2 ^ (Len(binStr) - i)))
    next
end function
 
document.write(BinToDec("1010") & "<br>") ' 显示为 10

八进制转换成十进制

使用 &0。数字 0,不是字母 o。

document.write(&010 & "<br>") ' 显示为 8
document.write(Int("&0" + "10") & "<br>") ' 显示为 8

十六进制转换成十进制

使用 &H。

document.write(&HA & "<br>") ' 显示为 10
document.write(Int("&H" + "A") & "<br>") ' 显示为 10

关于 Int、CInt 的区别,请参见 Fix、Int、Round、CInt

相关文章