It is currently Thu May 23, 2013 1:12 pm

All times are UTC + 10 hours




Post new topic Reply to topic  [ 5 posts ] 
Author Message
 Post subject: Converting Decimal to Binary VB2010
PostPosted: Fri Nov 04, 2011 4:02 am 
Offline
Moderator
Moderator
User avatar

Joined: Sun Mar 28, 2010 9:03 pm
Posts: 699
Location: United Kingdom
I was looking for a way to convert a Decimal number to Binary in VB 2010. So wrote the following function.

It will convert decimal integer values to a binary string, you also have the option to set the number of bits the function returns, by default the function will return 8 bits.

For example:

Code:
Dim myDec As Integer

myDec = 146

textbox1.Text = DecToBin(myDec)

' will return Binary 10010010



Or we could set the number of bits to return like this


Code:
Dim myDec As Integer

myDec = 146

textbox1.Text = DecToBin(myDec, 16)

' will return Binary 0000000010010010



Code:
   Public Function DecToBin(ByVal DeciValue As Long, Optional ByVal NoOfBits As Integer = 8) As String
        Dim i As Integer
        Do While DeciValue > (2 ^ NoOfBits) - 1
            NoOfBits = NoOfBits + 8
        Loop
        DecToBin = vbNullString
        For i = 0 To (NoOfBits - 1)
            DecToBin = CStr((DeciValue And 2 ^ i) / 2 ^ i) & DecToBin
        Next i
    End Function


Top
 Profile  
 
 Post subject: Re: Converting Decimal to Binary VB2010
PostPosted: Fri Nov 04, 2011 7:48 am 
Offline
Moderator
Moderator
User avatar

Joined: Sun Mar 28, 2010 9:03 pm
Posts: 699
Location: United Kingdom
Just incase you want to convert a Binary number back to Decimal:

Code:
    ' builds a decimal number from a binary string.
    Public Function BinToDec(ByVal Binary As String) As Long
        Dim n As Long
        Dim s As Integer

        For s = 1 To Len(Binary)
            n = n + (Mid(Binary, Len(Binary) - s + 1, 1) * (2 ^ (s - 1)))
        Next s

        BinToDec = n
    End Function


Top
 Profile  
 
 Post subject: Re: Converting Decimal to Binary VB2010
PostPosted: Mon Nov 07, 2011 11:50 am 
Offline
Site Admin
Site Admin
User avatar

Joined: Fri Mar 26, 2010 10:30 pm
Posts: 1863
very handy!

I am surprised it doesn't have that sort of functionality built in?


Top
 Profile  
 
 Post subject: Re: Converting Decimal to Binary VB2010
PostPosted: Tue Nov 08, 2011 5:20 am 
Offline
Moderator
Moderator
User avatar

Joined: Sun Mar 28, 2010 9:03 pm
Posts: 699
Location: United Kingdom
brad wrote:
I am surprised it doesn't have that sort of functionality built in?



I spent quite awhile looking for a function in VB for Binary conversions but no luck!

Found some for Decimal to HEX though :)


Top
 Profile  
 
 Post subject: Re: Converting Decimal to Binary VB2010
PostPosted: Sat Nov 12, 2011 6:10 am 
Offline
Site Admin
Site Admin
User avatar

Joined: Fri Mar 26, 2010 10:30 pm
Posts: 1863
Speaking of conversions - I have been giving lectures on that sort of thing just this week :D


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC + 10 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Theme made by Keenen Wheeler