From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII X-Google-Thread: 103376,afb6e61f9b1678d1 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-10-02 01:30:50 PST Path: archiver1.google.com!news2.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!elnk-nf2-pas!elnk-pas-nf1!newsfeed.earthlink.net!west.cox.net!east.cox.net!peer01.cox.net!cox.net!newsfeed.stueberl.de!news-mue1.dfn.de!news-lei1.dfn.de!news.uni-jena.de!not-for-mail From: Adrian Knoth Newsgroups: comp.lang.ada Subject: Re: Bitwise XOR? Date: 2 Oct 2003 08:30:50 GMT Organization: loris.TV Message-ID: References: NNTP-Posting-Host: ppc201.mipool.uni-jena.de Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: fsuj29.rz.uni-jena.de 1065083450 4055 141.35.13.101 (2 Oct 2003 08:30:50 GMT) X-Complaints-To: news@rz.uni-jena.de NNTP-Posting-Date: 2 Oct 2003 08:30:50 GMT User-Agent: slrn/0.9.7.4 (Linux) Xref: archiver1.google.com comp.lang.ada:101 Date: 2003-10-02T08:30:50+00:00 List-Id: David N. Maez wrote: > x : integer; > y : integer; > x := x xor y; > What am I missing? There is no XOR defined for anything else than bits. You'll need to mask the bits and recombine the result. I did it some time ago, I'm not sure whether it is right, perhaps it should be done on mod-datatypes. function "xor" (Left, Right : in Integer) return Integer is result : Integer := 0; leftrest : Integer := Left; rightrest : Integer := Right; boolleft, boolright : Boolean; begin for I in 0 .. Integer'Size - 1 loop if (leftrest mod 2 = 1) then boolleft := True; else boolleft := False; end if; leftrest := leftrest / 2; if (rightrest mod 2 = 1) then boolright := True; else boolright := False; end if; rightrest := rightrest / 2; if (boolleft xor boolright) then result := result + 2**(I); end if; end loop; return result; end "xor"; -- mail: adi@thur.de http://adi.thur.de PGP: v2-key via keyserver M�nner sind wie Jeans: blau und steif...