permet de convertir une chaine en binaire de faire une rotation et de le reconvertir en chaine. utile pour le cryptage ou le calcul de certaine checksum :)
Source / Exemple :
Function decimale(nombre As String) As Long
Dim x, y, z As Long
Dim bin As Variant
bin = CVar(nombre)
x = Len(nombre)
y = x
z = 0
Do Until x = 0
z = z + (CVar(Mid(bin, x, 1)) * (2 ^ (y - x)))
x = x - 1
Loop
decimale = z
End Function
Function binaire(nombre As Long) As String
Dim bin As String
Dim digit As String
' transformer en binaire par division successive
If nombre > 0 Then
Do While nombre > 0
digit = CStr(nombre Mod 2)
bin = digit + bin
nombre = nombre \ 2
Loop
Else
bin = "0"
End If
binaire = String(8 - Len(bin), "0") & bin
End Function
Function rot(rotation As String, Optional par_la_droite As Boolean = True) As String
'rotation d un bit par la droite ou par la gauche d'un octet
If par_la_droite Then
rot = Mid(rotation, Len(rotation), 1) & Mid(rotation, 1, Len(rotation) - 1)
Else
rot = Mid(rotation, 2, Len(rotation) - 1) & Mid(rotation, 1, 1)
End If
End Function
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.