Bill, That’s exactly what I was after..... thanks :-)
Phil. -----Original Message----- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of (IBM Mainframe Discussion List) Sent: 23 July 2007 15:38 To: [email protected] Subject: Re: EBCDIC to HEX translation in Assembler? In a message dated 7/23/2007 9:11:16 A.M. Central Daylight Time, [EMAIL PROTECTED] writes: >Wouldn't this just be the PACK command? Not sufficient. >Are you needing it in binary or Packed Decimal? OP wants it translated to "the real hex number." Without any further technical specifications, I would assume, e.g., that EBCDIC "A3" should be translated into X'A3'. In this case two input bytes result in one output byte. There are other possibilities where the output is not exactly one-half the length of the input. This string is really X'C1F3'. If you PACK it you will end up with X'013F' which is not the same as X'A3'. First translate every byte into its hex equivalent, then pack with one extra byte on the right that you plan to throw away. TR STRING,TABLE * STRING now contains X'0A03'. PACK OUTPUT(2),STRING(3) * OUTPUT now contains X'A3yx', where yx is the inverse of whatever was in the first byte of OUTPUT before the PACK executes. I assumed it contained X'xy', so after the PACK the right-most byte has its two nibbles reversed into X'yx'. * You now have the real hex number in the first byte of OUTPUT. ... STRING DC C'A3' OUTPUT DS XL2 * TABLE DC 256X'00' ORG TABLE+C'A' DC X'0A0B0C0D0E0F' ORG TABLE+C'0' DC X'00010203040506070809' ORG , You might also want to add code to validate the input string before translating; i.e., each byte must be between C'A' and C'F' or between C'0' and C'9'. You can play tricky games to reduce the size of the translate table considerably. Bill Fairchild Plainfield, IL No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.476 / Virus Database: 269.10.14/912 - Release Date: 22/07/2007 19:02 ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

