[PD] Binary - integer conversion

David Powers cyborgk at gmail.com
Fri Mar 16 20:18:12 CET 2007

```Wow I thought for sure this would be built in ... or at least a common
external.

It kind of defeats the point of using bitwise operations, if I have to
do a conversion with some PD list algorithm, because the whole point
was to avoid list operations in PD, in order to speed things up! It
would be easy enough to do though: tabdump, for every position that is
1, raise 2 to the i power (where i is the index of the position), and
add up the results.

I guess speed is the issue here for me, rather than the ability to
convert per se. This would be a good reason to write my first external
I guess.

~David

On 3/16/07, Kyle Klipowicz <kyleklip at gmail.com> wrote:
> You must implement the algorithm shown in this link:
>
> http://en.wikipedia.org/wiki/Binary_numeral_system#Decimal
>
> I did that in C during that earlier mentioned summer of my K&R C
> binge. I'm not sure how tricky it would be to do in Pd.
>
> ~Kyle
>
> On 3/16/07, David Powers <cyborgk at gmail.com> wrote:
> > Hi, sorry I do know that, but it's not my question.
> >
> > In order to use the bitwise operators, I think I need to convert an
> > arbitrary string of 0's and 1's, say "00010101", into an integer, in
> > this case I think 21. Is that more clear?
> >
> > Thanks,
> > David
> >
> > On 3/16/07, Steffen <stffn at dibidut.dk> wrote:
> > >
> > > On 16/03/2007, at 18.44, David Powers wrote:
> > >
> > > > Hello,
> > > >
> > > > Is it possible to somehow convert back and forth between integer and
> > > > binary in PD?
> > > >
> > > > My idea, is to represent simple drum machine style rhythms as binary
> > > > numbers. [101010001011]. Ok, so if this were a float, it would be
> > > > trivial to do a common task and shift the rhythm left or right. I
> > > > think, that other rhythmic variations would also be quite fast to
> > > > implement using this system, you can do binary math instead of list
> > > > operations which should be much faster, I assume.
> > >
> > >
> > > I think you want to have a look at the bitwice operators &,&&,|,||,<<
> > > and >>. See also http://en.wikipedia.org/wiki/Bitwise_operation
> > >
> > > Hope this helps.
> > >
> >
> > _______________________________________________
> > PD-list at iem.at mailing list
> > UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
> >
>
>
> --
>
> http://perhapsidid.blogspot.com
>
> (((())))(()()((((((((()())))()(((((((())()()())())))
> (())))))(()))))))))))))(((((((((((()()))))))))((())))
> ))(((((((((((())))())))))))))))))))__________
> _____())))))(((((((((((((()))))))))))_______
> ((((((())))))))))))((((((((000)))oOOOOOO
>

```