我读一个硬件端口,返回一个16进制的数,我想将这个16进制的数转换为2进制,vb
是否由此函数,多谢!!!

解决方案 »

  1.   

    Private Sub Command1_Click()
    MsgBox hextobin("1DA565665645DBCAEDFA98145DBCAEDFA98165645D645DBCAEDFA98145DBCABCAEDFA9810")
    End Sub
    Function hextobin(ByVal x As String) As String
    hextobin = ""
    Dim hexs As New Collection
    For i = 1 To 16
    hexs.Add Split("0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111", ",")(i - 1), Hex(i - 1)
    Next
    For i = 1 To Len(x)
    hextobin = hextobin & hexs(Mid(x, i, 1))
    Next
    Do While Left(hextobin, 1) = "0"
    hextobin = Right(hextobin, Len(hextobin) - 1)
    Loop
    End Function