× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Jon,

You want something like this ...

*in50 = %bitand( Out(Idx) : x'01' ) <> 0;
Out(Idx) = %bitxor( Out(Idx) : x'b5' );

If, in the common idiom, the value of *in50 has no further use, then you
need only the second of the lines.

If, perchance, you do to all eight 1-character elements of array Out,
you can reduce this to ...

Out = %bitxor( Out : x'b5b5b5b5b5b5b5b5' );

Perhaps there is some form of *ALL-constant which would save typing, but
I do not know it. Pointers, anybody?

Cheers,
Terry.


On Fri, 2009-03-20 at 17:27 -0500, Jon Sinner wrote:
I am trying to convert some code to free format. I have searched the
archived and found many posts about the use of

%BITAND and %BITOR. Maybe it is because it is late on Friday, but I
just do understand the bit masks and how to use these BIF's.



Can someone show me how to convert the following code to free. I would
really appreciate it.



C TESTB '0' Out(Idx) 50
OFF

C IF *IN50

C BITON '0' Out(Idx)

C ELSE

C BITOFF '0' Out(Idx)

C ENDIF

C*

C TESTB '2' Out(Idx) 50
OFF

C IF *IN50

C BITON '2' Out(Idx)

C ELSE

C BITOFF '2' Out(Idx)

C ENDIF

C*

C TESTB '3' Out(Idx) 50
OFF

C IF *IN50

C BITON '3' Out(Idx)

C ELSE

C BITOFF '3' Out(Idx)

C ENDIF

C*

C TESTB '5' Out(Idx) 50
OFF

C IF *IN50

C BITON '5' Out(Idx)

C ELSE

C BITOFF '5' Out(Idx)

C ENDIF

C*

C TESTB '7' Out(Idx) 50
OFF

C IF *IN50

C BITON '7' Out(Idx)

C ELSE

C BITOFF '7' Out(Idx)

C ENDIF





Thanks



Jon







As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.