|
Scott, You can use BITON and BITOF to emulate the logical operators OR AND and XOR much more efficiently than that. You don't need to do a TESTB or use indicators. Assume the operands are in single byte fields A and B and you want the result in field C without altering A or B. To perform OR: C MOVE A C 1 C BITONB C To perform AND: C MOVE A C 1 C MOVE A X 1 C BITOFB X C BITOFX C To perform XOR: C MOVE A C 1 C MOVE B X 1 C BITOFA X C BITOFB C C BITONX C Still not as efficient as directly implemented operations, but not bad. Dave Kahn Johnson & Johnson International (Ethicon) France Phone : +33 1 55 00 3180 Email : dkahn1@jnjfr.jnj.com (work) dkahn@cix.co.uk (home) -----Message d'origine----- De: Scott Klement [mailto:infosys@klements.com] Date: 06 August 1999 06:43 À: RPG400-L@midrange.com Objet: Re: Humorous Enhancements YES!!! YES!!! We need some real bitwise operations. (this probably doesn't surprise you coming from me) I've had to write special routines that go through a string of bytes, check every single bit with TESTB, compare it against the same bit pos in a different string, and finally do a manual XOR. (by checking the result indicators of testb) and then finally using BITON to set the string of bytes to the result. Doesnt perform real well when compared to a real XOR operation. I'm sure the CPU can do XOR at the machine code level... so it seems silly to have to go that far to make an XOR. :) +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---END
As an Amazon Associate we earn from qualifying purchases.
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.