[Gambas-user] binary numeral system

Simonart Dominique simonart.dominique at ...11...
Tue Apr 14 21:02:23 CEST 2009


Ron_1st a écrit :
> On Tuesday 14 April 2009, Simonart Dominique wrote:
>> PUBLIC SUB Button1_Click()
>> DIM S AS String
>> DIM i, y, N AS Integer
>>
>>     S = TextArea1.Text
>>     y = Len(S)
>>     if y = 0 THEN RETURN
>>     N = 0
>>     FOR i = 1 to y
>>        d = Val(Mid(S, i, 1)) ' I assume that d is 0 or 1
>>        N += d * (2 ^ (y-i))
>>     NEXT
>>     TextArea1.Text &= "\nBinary " & S & " = decimal " & Str(N)
>> END
>>
> 
> 
> 
> function bin2dec(sBin) as long
>   dim r as long
>   r=0
>   for i= 1 to len(sBin)
>     r = r*2 + Val(Mid(sBin, i, 1)) 	
>   next
>   return r
> end
> 
>> PUBLIC SUB Button1_Click()
>>    TextArea1.Text = "\nBinary " & TextArea1.Text & " = decimal " &  bin2dec(TextArea1.Text)
>> END
> for 10011 as sBin the sequence is as follows:
> r*2=0  +1 = 1
> r*2=2  +0 = 2
> r*2=4  +0 = 4
> r*2=8  +1 = 9
> r*2=18 +1 =19
> 
> 
> I does not matter the size of input string.
> The only limit is r should of apropiate type
> to hold the result.
> Multiply is faster as Power
> 
> 
> Best regards,
> 
> Ron_1st
> 

Thanks Ron!

You're right, there is no need to use the power factor at 
all! My mind was not opened enough to see that!





More information about the User mailing list