Thanks. So it *does* the same thing as TR, but with more controls. Nice. On Wed, Apr 12, 2017 at 10:18 AM, John McKown <[email protected]> wrote:
> On Wed, Apr 12, 2017 at 8:46 AM, zMan <[email protected]> wrote: > > > I'm not clear on the difference between TR and TROO, even after reading > the > > PofOp. Anyone got a good explanation? > > > > In defiance of your request for a good explanation, I will write something > [grin]. TR basically can translate 1 to 256 bytes, the length specified in > the instruction itself. So the first difference is that that (maximum) > length for the second operand in TROO is specified in the next higher > register from the "r1" register (source address register). This makes it > easier to use for something like a PL/I "char varying" string. The second > thing is the existence of the "m3" field. If the "m3" field is '...0'b then > GPR0 has a "stop character" value. This allows you to specify a maximal > length in "r1+1" register, but say "oh, if you see _this value_ (specified > in GPR0), then stop prematurely. This is very handy for a x'00' delimited C > language string (e.g. "Translate the next 20 characters, but stop before > then if you see a x'00'). The other instructions: TROT, TRTO, and TRTT also > have this functionality. This is needed in TRTT if you are using it with C > language UTF-16 (wide) encoded characters where the "end of string" is > 0x0000 and not just a single 0x00. This is important because many UTF-16 > characters (basically the historic "ANSI") are encoded with a leading or > trailing 0x00. E.g. "A" = 0x41 in UTF-8, but is 0x0041 in UTF-16be or > 0x4100 in UTF-16le.. > > > > Oh, and I forgot "TRE" (Translate Extended) > > > -- > "Irrigation of the land with seawater desalinated by fusion power is > ancient. It's called 'rain'." -- Michael McClary, in alt.fusion > > Maranatha! <>< > John McKown > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to [email protected] with the message: INFO IBM-MAIN > -- zMan -- "I've got a mainframe and I'm not afraid to use it" ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
