What is the use of TRT instruction and how it is working?

Answer Posted / phils

TRT is used to scan a string of characters byte by byte,
using the hexadecimal value of each character to 'index'
into a 256 byte translate table, If the resultant table byte
is set to X'00', then processing continues with the next
input character, and so on until end of input string, or a
non-zero table byte is encountered.



TRT sets the condition code to indicate the results
of the scanning operation as follows:

Condition Code Indications

0 ( Zero ) All table bytes X’00’.
1 ( Minus ) nonzero tabl found before the end
of operand 1
2 ( Positive ) A nonzero table byte was found at
the end of the operand 1

The condition code can be tested using BZ, BNZ, BM, BNM,
BP, or BNP.

In this way we can test that a string contains only
'desirable values' by setting the equivalent bytes in the
translate table to X'00' e.g. testing for numerics as in
answer 4.

Is This Answer Correct ?    3 Yes 2 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

explain about maximum displacement and how to cross this limit?

701


In the house keeping section of an MVS assembly language program, like the one below STM R14,R12,12(R13) BASR R12,R0 USING *,R12,R11 LA R11,2048 LA R11,2048(R11,R12) .... .... 1. What if BASR R12,R0 IS NOT PRECEDE USING *,R12,R11? 2. USING (base address), REGISTER does USING directive says assembler to treat particular Register as a base register with the mentioned base address..in the above case * i.e current location counter..well if that is the case why we need BASR R12,R0 ? 3. What if I write like STM R14,R12,12(R13) BASR R12,R0 LA R11,2048 LA R11,2048(R11,R12) USING *,R12,R11 there is no address resolution being calculated in both LA statements so is it a right way to set Base register?..will there be any issues with Domain regarding R11 and R12?

1531


How to pass the parameters from jcl to assembler program?

576


Explain about house keeping in assembler?

636


Explain how to pass instream data in sysin with assembler?

648






What does the following code do? Ap wkur,=p5 where wkur is a label?

615


how to pass the parameters from jcl to assembler pgm?

658


What is need of start 0?

659


how to initialize a register to 0000?

667


What is need of start 0? In steed of can we use anyother numerics? If we use what will happen?

642


Explain about base register?

607


how do you round the addition or subtraction of two numbers in assembler? what does the following code do? change process tool(code changes from dev to prd) the changes made to your code should be effected in live. How the process takes place. That is how can you move the code changes from development to production?

688


Explain how to initialize a register to 0000?

589


How many maximum base registers we can have in a single program?

639


What is icm instruction?

640