Professional Documents
Culture Documents
PC2DCX
PC2DCX
'****************************************************************
' Name: Bin
' ' Description:Converts BIN ---> DEC.
'****************************************************************
Function Bin%(b$)
bTemp% = 0
t$ = Right$(String$(16, "0") + b$, 16)
mask% = &H4000
For i% = 2 To 16
mask% = mask% \ 2
Next i%
Bin% = bTemp%
End Function
'****************************************************************
' Name: Bin2Long
' Description:converting from a string of binary bits to int
' eger is a snap! voltzNOSPAM@ovnet.com
' By: Newsgroup Posting
'
' Inputs:None
' Returns:None
' Assumes:None
' Side Effects:None
'
'Code provided by Planet Source Code(tm) 'as is', without
' warranties as to performance, fitness, merchantability,
' and any other warranty (whether expressed or implied).
'****************************************************************
'****************************************************************
' Name: Converting Decimal numbers to Binary
' Description:A function for converting decimal numbers to b
' inary. Very fast.
' By: K. Mehdi
'
' Inputs:Decimal number (Long)
' Returns:Binary number (string)
' Assumes:None
' Side Effects:None
'
'Code provided by Planet Source Code(tm) 'as is', without
' warranties as to performance, fitness, merchantability,
' and any other warranty (whether expressed or implied).
'****************************************************************
Do
TempValue = decvalue Mod 2
binvalue = CStr(TempValue) + binvalue
decvalue = decvalue \ 2
Loop Until decvalue = 0
dec2bin = binvalue
End Function
'****************************************************************
' Name: Convert hex to integer
' ' Description:Convert hex to integer.
' "Shawn Lee" <shawnlee@cris.com>
' By: Newsgroup Posting
'
' Inputs:None
' Returns:None
' Assumes:None
' Side Effects:None
'
'Code provided by Planet Source Code(tm) 'as is', without
' warranties as to performance, fitness, merchantability,
' and any other warranty (whether expressed or implied).
'****************************************************************
End If
Select Case Mid(hexa$, 1, 1)
Case "A"
hexa1 = 10
Case "B"
hexa1 = 11
Case "C"
hexa1 = 12
Case "D"
hexa1 = 13
Case "E"
hexa1 = 14
Case "F"
hexa1 = 15
Case Else: hexa1 = Mid(hexa$, 1, 1)
End Select
Select Case Mid(hexa$, 2, 1)
Case "A"
hexa2 = 10
Case "B"
hexa2 = 11
Case "C"
hexa2 = 12
Case "D"
hexa2 = 13
Case "E"
hexa2 = 14
Case "F"
hexa2 = 15
Case Else: hexa2 = Mid(hexa$, 2, 1)
End Select
Select Case Mid(hexa$, 3, 1)
Case "A"
hexa3 = 10
Case "B"
hexa3 = 11
Case "C"
hexa3 = 12
Case "D"
hexa3 = 13
Case "E"
hexa3 = 14
Case "F"
hexa3 = 15
Case Else: hexa3 = Mid(hexa$, 3, 1)
End Select
End Function
Public Function hex2dec(ByVal hexa$) As Integer
' preparada para recibir solo dos caracteres y devolver el entero
Dim hexa1, hexa2
If Len(hexa$) < 2 Then
hexa$ = Right$(String$(2, "0") + hexa$, 2)
End If
Select Case Mid(hexa$, 1, 1)
Case "A"
hexa1 = 10
Case "B"
hexa1 = 11
Case "C"
hexa1 = 12
Case "D"
hexa1 = 13
Case "E"
hexa1 = 14
Case "F"
hexa1 = 15
Case Else: hexa1 = Mid(hexa$, 1, 1)
End Select
Select Case Mid(hexa$, 2, 1)
Case "A"
hexa2 = 10
Case "B"
hexa2 = 11
Case "C"
hexa2 = 12
Case "D"
hexa2 = 13
Case "E"
hexa2 = 14
Case "F"
hexa2 = 15
Case Else: hexa2 = Mid(hexa$, 2, 1)
End Select
hex2dec = Val(hexa1) * 16 + Val(hexa2)
End Function
Public Function xor_propio(b1$, b2$) As String
Dim i As Integer
Dim s1, s2, s3
s3 = ""
b1$ = Right$(String$(8, "0") + b1$, 8)
b2$ = Right$(String$(8, "0") + b2$, 8)
For i = 1 To 8
s1 = Mid(b1$, i, 1)
s2 = Mid(b2$, i, 1)
s3 = s3 & (s1 Xor s2)
Next i
xor_propio = s3
End Function