Две функции преобразования десятичного числа в двоичное
Автор Lukas   
23.08.2009 г.

Функция LongToBinStr работает быстре

Еще несколько  подобных функций и обсуждение можно посмотреть на форуме

 

Public Function LongToBinStr(ByVal Number As LongOptional Digits As Long = 32) As String

'? LongToBinStr (5)
'00000000000000000000000000000101

    Dim i As Long
    Const ZERO As String = "0"
    Const ONE As String = "1"
    LongToBinStr = String(Digits, ZERO)

    For i = Digits To 1 Step -1
        If Number Mod 2 Then
            Mid$(LongToBinStr, i, 1) = ONE
        End If
        Number = Number \ 2
        If Number = 0 Then Exit Function
    Next i
End Function



Public Function ToBinary(ByVal Number As LongAs String
'? ToBinary(5)
'101

    ToBinary = Number Mod 2
    Do While Number > 1
        Number = Number \ 2
        ToBinary = Abs(Number Mod 2 > 0) & ToBinary
    Loop
End Function


Просмотров: 11055

  Ваш коментарий будет первым

Добавить коментарий
Имя:
E-mail
Коментарий:



Код:* Code