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

Reply via email to