Les Snippets

Connexion

Conversion binaire dans les deux sens

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 18/07/2010 19:53:20 et initié par ghuysmans99 [Liste]
Vue : 5975
Catégorie(s) : Maths, Algorithme
Langages dispo pour ce code :
- VB 2005, VB6, VBScript
- VB 2005, VB 2008
- Tcl



Langage : VB6 , VB 2005 , VBScript
Date ajout : 18/07/2010
Posté par ghuysmans99 [Liste]
VB.NET

Public Function FromBin(ByVal Number As String) As Integer     Dim pos As Integer = 1, l As Integer = Number.Length     Dim Result As Integer, Current As Byte     Do         Current = Conversion.Int(Mid(Number, pos, 1))         Result += (Current * 2 ^ (l - pos))         pos += 1     Loop While pos <= l     Return Result End Function Public Function ToBin(ByVal Number As Integer) As String     Dim Rest As Integer, Result As String = ""     Do         Rest = Number Mod 2         Number = Number \ 2         Result = Rest.ToString() & Result     Loop While Number > 0     Return Result End Function VB6
Public Function FromBin(ByVal Number As String) As Integer     Dim pos As Integer, l As Integer     Dim Result As Integer, Current As Byte     pos = 1     l = Len(Number)     Do         Current = CByte(Mid(Number, pos, 1))         Result = Result + (Current * 2 ^ (l - pos))         pos = pos + 1     Loop While pos <= l     FromBin = Result End Function Public Function ToBin(ByVal Number As Integer) As String     Dim Rest As Integer, Result As String     Do         Rest = Number Mod 2         Number = Number \ 2         Result = CStr(Rest) & Result     Loop While Number > 0     ToBin = Result End Function VBS
Public Function FromBin(Number)     Dim pos, l     Dim Result, Current     pos = 1     l = Len(Number)     Do         Current = CByte(Mid(Number, pos, 1))         Result = Result + (Current * 2 ^ (l - pos))         pos = pos + 1     Loop While pos <= l     FromBin = Result End Function Public Function ToBin(Number)     Dim Rest, Result     Do         Rest = Number Mod 2         Number = Number \ 2         Result = CStr(Rest) & Result     Loop While Number > 0     ToBin = Result End Function
Langage : VB 2005 , VB 2008
Date ajout : 21/08/2010
Posté par ghuysmans99 [Liste]
    Protected Function FromBin(ByVal Number As String) As Long
        Dim i As Integer, p As Integer = 0, Result As Long = 0
        For i = Number.Length - 1 To 0 Step -1
            If "01".IndexOf(Number(i).ToString()) = -1 Then
                Throw New Exception("Invalid parameter !")
                Exit Function
            End If
            Result += Number(i).ToString() * 2 ^ p
            p += 1
        Next i
        Return Result
    End Function
    Protected Function ToBin(ByVal Number As Long) As String
        Dim Result As String = ""
        Do
            Result = (Number Mod 2).ToString() & Result
            Number \= 2
        Loop While Number > 0
        If Result.Length = 0 Then Result = "0"
        Return Result
    End Function

Une fois optimisées c'est mieux ...

Langage : Tcl
Date ajout : 08/11/2010
Posté par gersoo [Liste]
proc Dec2Bin {s} {
 binary scan [binary format I $s] B32 str
 return [string trimleft $str 0]
}
proc Bin2Dec {s} {
 set s [format %032s $s]
 binary scan [binary format B32 $s] I str
 return $str
}
# Tests
Dec2Bin 121
Bin2Dec 1111001

Snippets en rapport avec : Base, Conversion, Binaire



Codes sources en rapport avec : Base, Conversion, Binaire

{Visual Basic, VB6, VB.NET, VB 2005} CLASSE DE CONVERSION INTER-BASES (BASE 2-36 VERS BASE 2-36)
Salut, voilà une classe de conversion inter-bases. Certes, encore une source dans ce genre, mais l'i...

{Visual Basic, VB6, VB.NET, VB 2005} CONVERTISSEUR UNIVERSEL EN BASES MULTIPLES
Petit programme permettant de convertir un nombre décimal en un nombre en bases multiples ( de 2 à 2...

{Visual Basic, VB6, VB.NET, VB 2005} CONVERSION DE BASE2 BASE10 BASE16
Bon voila c'est un petit code qui permet la conversion des bases 2 bases 10 et bases 16. Un petit p...

{C / C++ / C++.NET} CONVERSION DEC / HEX / BIN (WIN 32)
Bon, je sais qu'il y a deja pas mal de sources sur ces conversions, j'aporte juste une "interface gr...

{Visual Basic, VB6, VB.NET, VB 2005} CONVERSION DE NOMBRES EN BASE X
Avec VB, il est possible de convertir un nombre décimal (base 10) en hexadécimal (base 16): mais il ...

{Visual Basic, VB6, VB.NET, VB 2005} CONVERTISSEUR HEXAVIGÉSIMAL
Ce convertisseur comme son nom l'indique permet d'effectuer l'incrémentation d'une combinaison de le...

{Visual Basic, VB6, VB.NET, VB 2005} CONVERTISSEUR DÉCIMAL BINAIRE HEXADÉCIMAL OCTAL
Convertit en temps réel des nombres décimaux, binaires, hexadécimaux et octaux. Le code fourni s...

{C / C++ / C++.NET} TECHNIQUE SIMPLE DE CONVERSION BINAIRE DÉCIMAL
Voili voilou un petit programme que je partage pour toutes les personnes qui comme moi débute en pro...

{JAVA / J2EE} CONVERTIR ENTRE LES BASES 10,2,8 ET 16
ce code permet de convertir des valeurs en base donnée a une autre base aussi de chercher le code as...

{Python} CONVERSION ET COMPARAISON D'ENTIER RELATIFS EN BINAIRE
Slt! J'ai écri une fonction qui permet de convertir à la fois deux entiers relatifs en binaire sur k...